for co zrobić ?
Ostatnio zmodyfikowano 2011-03-27 19:49
G.H.O.S.T. Temat założony przez niniejszego użytkownika |
for co zrobić ? » 2011-03-25 20:30:57 Cześć mam pewną część kodu...
for( int o = 3; o <= odpowiedz_uz; odpowiedz_uz-- ) { cout << "Dobrze!"; };
for( int o = 2; o <= odpowiedz_uz; odpowiedz_uz-- ) { cout << "Zle..."; }
for( int o = 1; o <= odpowiedz_uz; odpowiedz_uz-- ) { cout << "Zle..."; }
Całego kodu nie dam z przyczyn oczywistych ;)
Mam taki program, że jak użytkownik wybierze np. 3 to wyświetli się "Dobrze!" ale w tym problem, że jak to wybiera to pokazuje się "Dobrze!" "Zle..." "Zle..." "Dobrze!" i tak kilka razy. Co zrobić, żeby tylko "Dobrze!" pokazywało ? |
|
szyx_yankez |
» 2011-03-25 20:38:32 if( odpowiedz_uz == 3 ) cout << "Dobrze!"; else cout << "Zle!"; |
|
dmx81 |
» 2011-03-26 01:35:21 przesledz dzialanie swojego kodu: odpowiedz=3 poczatek: o=3, warunek trwania petli : spelnona nierownosc o<=odpowiedz, krok to zmniejsz o 1 odpowiedz 1. o=3 co jest prawda, ze o<=odpowiedz, zmniejsz odpowiedz, wyswietl dobrze 2.odpowiedz=2,warunek nie spelniony - wychodzisz z petli 3.wchodzisz do petli ponizej - o=2, prawda, ze o<=odpowiedz, zmniejsz o 1 odpowiedz, wyswietl zle... itd itd...
petle nie wykluczaja siebie na wzajem, do tego jak kolega wyzej napisal trzeba uzyc instrukcji warunkowych for() lub np switch()
zostaja one wykonane albo jedna, albo druga, albo kolejna (o ile dobrze zaprojektujesz) bo mozna skopac piszac if( cos_tam == 3 ) cos_tam--;
if( cos_tam == 2 ) ...
switch( cos_tam ) case 3 :..case 2 : najlepiej samemu przeanalizowac kod po kolei, co bedzie sie dzialo ze zmiennymi w programie. dlatego dobrze jest pisac kod dzielac naklasy, pliki - tworzyc fragmentami dzialajace funkcje itd, latwiej znalezc blad, bo przy kilku tysiacach linii kodu napisanego strukturalnie, jest to duzo trudniejsze i czasochlonne |
|
G.H.O.S.T. Temat założony przez niniejszego użytkownika |
» 2011-03-27 19:48:31 Yeah !!! sam do tego doszedłem. Na początku też próbowałem z if'em ale coś nie wychodziło. Po prostu jak deklarowałem funkcję np. odp_dla_3() w funkcji głównej main() to robiłem tak.
int main() { coś tam coś tam....
.. .. . .. int do_main = odp_dla_3(); //To powinno być na samym początku przed pierwszą klamrą w main() dlatego się knociło. cout << odp_dla_3(); }
Powiem szczerze uczyłem się funkcji ale nic z tego nie kumałem. Muszę częściej patrzeć do tutejszego kursu niż użyć mózgu.
|
|
McAffey |
» 2011-03-27 19:49:56 Jeśli problem rozwiązany to temat zamknij ;) |
|
« 1 » |