Forum Gry Filmy i Seriale Tech Ogólne Archiwum Regulamin

Forum: Pętla "for" dlaczego nie działa?

14.11.2012 20:22
1
Lozano23
67
Konsul

Pętla "for" dlaczego nie działa?

Prymitywne, ale ...

for (int pID = 0; pID < pages + 1; pID++)

for (int rID = 1; rID == 23; rID++)

System.Windows.Forms.MessageBox.Show(string.Format("‹0› - ‹1›", rID, pID));

Dlaczego to nie działa?

14.11.2012 20:23
pecet007
2
odpowiedz
pecet007
178
~

rID == 23

14.11.2012 20:23
3
odpowiedz
Nibru
83
Generał

nieważne

14.11.2012 20:54
4
odpowiedz
Lozano23
67
Konsul

Dzięki pecet :)

A teraz wytłumacz mi proszę. Druga pętla -> zaczynamy od rID 1 i chcę kontynuować dopóki dopóty rID osiągnie wartość 23. Dlaczego moja wersja jest niepoprawna. Zapis w postaci "rID < 24" działa.

14.11.2012 20:57
5
odpowiedz
zanonimizowany861943
46
Generał

Pętla wykonuje się tak długo jak warunek rID==23 jest prawdziwy. Jako, że już na starcie nie jest, pętla nie wykona się a więc rID nigdy nawet do 23 nie dojdzie.

14.11.2012 20:58
6
odpowiedz
PaWeLoS
168
Admiral

To jest warunek kontynuowania działania pętli. Jeśli masz rID==23, to ten warunek już na początku nie jest spełniony (bo rID jest równe 1) i pętla w ogóle sie nie wykona.

14.11.2012 21:01
👍
7
odpowiedz
Lozano23
67
Konsul

Aaa, no tak :)

Dzięki wielki chłopacy :)

14.11.2012 21:11
jiser
8
odpowiedz
jiser
94
generał-major Zajcef

Polecam Yoda-style wyrażeń warunkowych
Zamiast: rID == 24
pisz: 24 == rID
Jeśli się pomylisz w operatorze (=), to drugie wywali błąd kompilacji, a to pierwsze -- nie.

Forum: Pętla "for" dlaczego nie działa?