Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zaplątałem się z pętlami ; d
Forum PHP.pl > Forum > Przedszkole
kayy
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!
sowiq
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
kayy
W dalszy,m  ciągu jest tak samo  sadsmiley02.gif
erix
  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.
sowiq
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?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.