Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zaplątałem się z pętlami ; d, ;/
kayy
post 7.12.2008, 14:25:31
Post #1





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 3.08.2008

Ostrzeżenie: (0%)
-----


Witam, mam kod w deseń tego:

  1. <?php
  2. $ile = 2;
  3. $i = 0;
  4. $ac = 0;
  5. $b = 2;
  6. $tablica[0] = 1;
  7.  
  8. $tablica[1]=2;
  9. for ($i; $i < $ile; $i++) 
  10. { 
  11. for ($ac; $ac<$b; $ac++)
  12. {
  13. echo $tablica[$ac];
  14. }
  15.  
  16. }
  17. ?>



Na moje rozumowanie powinno się wyświetlić 1212, a wyświetla się tylko 12.

Poplątałem się pomocy ; d!


--------------------

Dziękuję wszystkim za pomoc w PHP :)
Go to the top of the page
+Quote Post
sowiq
post 7.12.2008, 14:30:39
Post #2





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Twój błąd wynika z tego, że nie ustawiasz na nowo wartości $ac. Po pierwszym przejściu zewnętrznej pętli wartość $ac ustawiona na 2, więc wewnętrzna pętla nie wykona się ani razu (w drugim przejściu zew. pętli). Wypróbuj to:

  1. <?php
  2. $ile = 2;
  3. $b = 2;
  4.  
  5. $tablica[0] = 1;
  6. $tablica[1] = 2;
  7.  
  8. for ($i = 0; $i < $ile; $i++) {
  9.   for ($ac = 0; $ac < $b; $ac++){
  10.      echo $tablica[$ac];
  11.   }
  12. }
  13. ?>


Prześledź swój kod, a na pewno zauważysz różnicę. Raczej nie zalecałbym użycia pętli for() w ten sposób jak zrobiłeś to Ty, bo potem wychodzą takie błędy smile.gif

Ten post edytował sowiq 7.12.2008, 14:33:27
Go to the top of the page
+Quote Post
kayy
post 7.12.2008, 14:36:54
Post #3





Grupa: Zarejestrowani
Postów: 112
Pomógł: 1
Dołączył: 3.08.2008

Ostrzeżenie: (0%)
-----


W dalszy,m  ciągu jest tak samo  sadsmiley02.gif


--------------------

Dziękuję wszystkim za pomoc w PHP :)
Go to the top of the page
+Quote Post
erix
post 7.12.2008, 14:40:42
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




  1. <?php
  2. for ($ac; $ac<$b; $ac++)
  3. {
  4. echo $tablica[$ac];
  5. }
  6. ?>

$ac ustawiaj przed tą pętlą, a nie na samym początku kodu.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
sowiq
post 7.12.2008, 14:46:10
Post #5





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(kayy @ 7.12.2008, 14:36:54 ) *
W dalszy,m  ciągu jest tak samo  sadsmiley02.gif
Przetarłem oczy ze zdziwienia, sprawdziłem wzrokiem jeszcze raz mój kod, odpaliłem go u siebie i otrzymałem: 1212. Jesteś pewien, że odpaliłeś właśnie ten kod?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 23:12