Rozdział 30 - Zadanie Domowe
Ostatnio zmodyfikowano 2012-07-05 23:03
hef22 Temat założony przez niniejszego użytkownika |
Rozdział 30 - Zadanie Domowe » 2012-07-05 20:42:46 Czesc
Mam problem z tym zadaniem:
"Napisz program, który zliczy liczbę możliwych kombinacji wylosowania 6 liczb ze zbioru 49 liczb. Zadanie należy rozwiązać przy pomocy zagnieżdżonych pętli (nie można używać wzoru). "
Jest tam podpowiedz:
"Weryfikacja poprawności zadania
Jeżeli uzyskana wartość mieści się w przedziale od 12 do 15 milionów to znaczy, że poprawnie rozwiązałeś zadanie. "
Problem w tym ze mi wychodzi : 956,385,313
Co jest źle, a może to podpowiedz jest błędna?
int main() { int mozliwe = 0; for( int i = 1; i <= 49; i++ ) { for( int j = 1; j <= 49; j++ ) { for( int s = 1; s <= 49; s++ ) { for( int d = 1; d <= 49; d++ ) { for( int g = 1; g <= 49; g++ ) { for( int y = 1; y <= 49; y++ ) { mozliwe++; } } } } } } cout << "Mozliwych kombinacji: " << mozliwe; return 0; }
Dotyczy rozdziału: Zagnieżdżanie pętli. |
|
DejaVu |
» 2012-07-05 23:03:40 To zadanie wymaga trochę głębszego przemyślenia tematu, a nie lekkiej modyfikacji przykładów podanych w rozdziale. Zauważ, że zliczasz zarówno przypadki gdzie liczby mogą się powtarzać (źle) oraz przypadki w których możesz otrzymać te same zbiory liczb wymienionych w różnej kolejności (co również jest złe). Przykład: 1,2,3,4,5,6 oraz 1,2,3,4,6,5 <= takie same zbiory liczb należy traktować jako jeden wynik, a nie kilka wyników. |
|
« 1 » |