Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Problem z pętlą do while
-ja22-
post
Post #1





Goście







  1. <?
  2.  
  3. print("Pętla");
  4. print('<br>');
  5. $a=1;
  6.  
  7. do {
  8. print $a;
  9. print ('<br>');
  10. $a++;
  11.  
  12. }
  13. while ($a<10);
  14.  
  15. ?>


Problem w tym, że jak wpisuje inny znak przy while ( np. ($a> bądź $a=) pętla nie zostaje wykonana. Pytanie teraz, czy można dawać inne znaki prócz znaku "<".
Powód edycji: [Daiquiri]: Dodałam BBCode
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Daiquiri
post
Post #2





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Po pierwsze stosuj BBCode. Po drugie zastanów się jaki postawiłeś warunek i czy on się spełni. Warunek może być dowolny (>,<,==) ale jak chcesz, żeby wykonał się określoną ilość razy musi być spełniony.

Ponadto zwróć uwagę, że = to przypisanie, a == przyrównanie.
Go to the top of the page
+Quote Post
-ja22-
post
Post #3





Goście







A niby dlaczego miałaby się nie spełnić?
Załóżmy, że pętla ma być wykonywana aż do momentu osiągnięcia wartości 10 . Jak daje przyrównanie to się nie wykonuje.
Dochodzi do momentu:
Pętla
1

I na tym koniec. Co zrobić aby się wykonała?
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




http://pl2.php.net/manual/en/language.oper....comparison.php
Kod
$a<=10

na przyszlość lista operatorów jest w KAŻDYM kursie.
Go to the top of the page
+Quote Post
thek
post
Post #5





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




DO WHILE: wykonuje się raz i sprawdza czy warunek jest spełniony. Wykonuje się tak długo dopóki warunek daje true.
Ty masz $i = 1 co wypisze w DO wartość 1, wykonuje się sprawdzenie $i == 10 -> nieprawda, pętla kończy działanie (IMG:style_emoticons/default/biggrin.gif) Logiczne czy wbijać do głowy łopatą trzeba?
Inne warunki:
$i < 10. $i = 1 co wypisze w DO wartość 1, wykonuje się sprawdzenie $i < 10, -> prawda, kolejna pętla i tak długo aż wypisze się wszystko od 1 do 9
$i > 10. $i = 1 co wypisze w DO wartość 1, wykonuje się sprawdzenie $i > 10, -> nieprawda, koniec.

Więcej trzeba przykładów by zrozumieć, że 1 < 10 to prawda, 1 == 10 to nieprawda i 1 > 10 to też bujda?
Go to the top of the page
+Quote Post
-ja22-
post
Post #6





Goście







Dzięki Thek ;D . Dopiero ty mi wyjaśniłeś o co kaman (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
thek
post
Post #7





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Skoro czegoś nie rozumiesz dlaczego działa tak a nie inaczej to poszukaj wyjaśnień w google. Ja wziąłem pierwszy wynik dla: do while php -> http://algorytmy.pl/doc/php/control-structures.do.while.php
Czy to było takie trudne?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 11:48