Προς το περιεχόμενο
  • 0
albNik

Ζητείται προγραμματιστής c#, java ή c/c++

Ερώτηση

...για να βρει την τιμή της count στον παρακάτω κώδικα :)

 

>
long count = 0;
int m = 1000;
for(int i1 = 0; i1 < m; i1++)
 for(int i2 = i1; i2 < m; i2++)
   for(int i3 = i2; i3 < m; i3++)
     for(int i4 = i3; i4 < m; i4++)
       for(int i5 = i4; i5 < m; i5++)
         count++;

//count =??????

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

11 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

  • 0

Ένα πιο εύκολο τώρα, να βρεθεί η sum

 

>
long sum = 0;
long n = 1000000000; //ena disekatomirio
for(long k = 0; k <= n; k++)
    sum += choose(n, k);

sum %= n;
//sum=?????????

       long choose(long n, long k) //n*(n-1)...(n-k+1) / (1*2*...*k)
       {
           long prod = 1;
           for(int i = 0; i < k; i++)
               prod *= n - i;
           for(int i = 2; i <= k; i++)
               prod /= i;
           return prod;
       }

 

 

 

 

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Η πλάκα είναι ότι την αρχική ερώτηση είναι ευκολότερο να την απαντήσει κανείς "ανάποδα": σκεπτόμενος τι είναι αυτό το πράγμα που όταν θέλεις να το υπολογίσεις βάζεις nested loops (όταν ξεκινάνε όλοι από το 1 και όταν καθένας ξεκινάει από την τιμή του προηγούμενου).

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Να ρωτησω, αφου τα πιασατε τα μαθηματικα.

πως μεταφραζεται αυτο σε μαθηματικα

 

 

 

float func(float input)

{

return input*0.01f;

}

..

float var = 10.0f;

for(int i = 0; i < 10; i++)

var = func(var);

 

 

 

??

post-216584-0-49613600-1354923396_thumb.jpg

zειμαι σιγουρος οτι αυτο που εχω στην εινωνα ειναι λαθος.

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Η αρχική είναι του τύπου πόσες πεντάδες(a,b,c,d,e) υπάρχουν με κριτήριο 0<=α<=b<=c<=d<=e<m

 

Ενώ η δεύτερη (η αναπάντητη :) ) είναι πόσες 0-αδες και 1-αδες και 2-αδες ....και ν-αδες εχουμε από το ν

 

 

Είναι 10 φορές var=func(var)= var/100/100.../100

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

@παπί

 

Το διδαχτήκαμε στην β' λυκείου.

ν-οστός όρος γεωμετρικής προόδου με λόγο λ=0.01.

 

αν = α1 λν-1 , ν=1,2,..

 

Αυτό που έγραψες όντως είναι λάθος.

Για το άθροισμα υπάρχει κλειστός τύπος, εξίσου απλός...

 

-

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Μαλιστα αρα αν βαλω στην func return input + input*0.01f;

θα ειναι

 

 

αν=α1+(α1λ)ν-1

 

 

Και αν θελω πχ να γινει 30 φορες; βαζω ενα κομμα και μετα v=30;

Α και κατι διαφορετικο αυτο εδω f(x) = x2, πως θα πω οτι θελω να γινει σε συγκεκριμενο διαστημα; πχ θελω τα ψ για χ [55,76]

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Δεν έχω βιβλίο μπροστά μου και δεν μπορώ να απαντήσω με απόλυτη σιγουριά για τους τύπους.

 

Όπως το θέτεις, δεν είναι απόλυτα σαφές τι θέλεις.

Οι ακολουθίες που δυο διαδοχικοί όροι τους συνδέονται με σχέση της μορφής αν+1 = αν λ λέγονται γεωμετρικές πρόοδοι.

Γνωρίζοντας τον πρώτο όρο, ο ν-οστός όρος βρισκεται άμεσα με την σχέση αν = α1 λν-1

Το άθροισμα των ν πρώτων όρων μιας τέτοιας προόδου (δηλ. γεωμετρικής) βρίσκεται άμεσα ως sum = α1 ( λν-1)/(λ-1) .

Αν είναι |λ|<1 και αθροίζεις άπειρους όρους, το άθροισμα δίνεται από την σχέση sum = α1 /(1-λ) .

 

Θυμάμαι ότι υπάρχουν άλλες δυο περιπτώσεις :

η αριθμητική πρόοδος και η αρμονική πρόοδος με επίσης απλές σχέσεις για τους διαδοχικούς όρους και το άθροισμα.

Σε γενικότερες περιπτώσεις (π.χ. όρισμα πραγματικό αντί φυσικό, ήτοι x αντί ν), μιλάμε γενικά για σειρές.

Το άθροισμα σειρών είναι γενικά δύσκολο να βρεθεί σε κλειστή μορφή (αν μπορεί βέβαια) ενώ ο ν-οστός όρος ως

συνάρτηση του πρώτου, απαιτεί την λύση εξισώσεων διαφορών. Σε τέτοιες περιπτώσεις, προγραμματιστικά το

κάνεις με βρόγχο και ξεμπερδεύεις.

 

Αν o γενικός όρος είναι αν = ν2, το άθροισμα ν τέτοιων όρων είναι sum = v(v+1)(2v+1)/6 .

 

Αυτά τα έχουμε κάνει στο λύκειο, πέρασαν χρόνια αλλά τα θυμάμαι ακόμα....

 

-

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Να ρωτησω, αφου τα πιασατε τα μαθηματικα.

πως μεταφραζεται αυτο σε μαθηματικα

 

>
float func(float input)
{
return input*0.01f;
}
..
float var = 10.0f;
for(int i = 0; i < 10; i++)
var = func(var);

 

Μαλιστα αρα αν βαλω στην func return input + input*0.01f;

 

η πρώτη function δεν έχει καμιά διαφορά με τη δεύτερη

για να μη μπερδέυεσαι γράφεται input*(1+0.01f)

 

άρα ο τύπος είναι f(n) = x*(1+0.01f)n

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

To 10 διαιρείται με 4 αριθμούς (1 2 5 10)

Με πόσους διαιρείται το 30, 3000, 400000, 1000000

Ποιος είναι ο μικρότερος που διαιρείται με 15, 30, 35, 50, 100 αριθμούς?

 

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε έναν λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι εύκολο!

Εγγραφείτε για έναν νέο λογαριασμό

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
×
×
  • Δημιουργία νέου...

Χρήσιμες πληροφορίες

Με την περιήγησή σας στο insomnia.gr, αποδέχεστε τη χρήση cookies που ενισχύουν σημαντικά την εμπειρία χρήσης.