Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Tabliczka mnożenia - jak to działa?
Forum PHP.pl > Forum > Przedszkole
olkaa
Nie mogę zrozumieć jak to działa...

  1. echo '<table border="1">';
  2. for($a=1; $a<=10; $a++)
  3. {
  4. echo '<tr>';
  5. for($b=1; $b<=10; $b++)
  6. {
  7. if(($a==1)||($b==1))
  8. {
  9. echo '<td bgcolor="red">'.$a*$b.'</td>';
  10. }
  11. else
  12. {
  13. echo '<td>'.$a*$b.'</td>';
  14. }
  15.  
  16. }
  17. echo'</tr>';
  18.  
  19. }
  20.  
  21. echo '</table>';
  22.  



Wyświetla się na czerwono od 1 do 10 na górze i po prawej stronie.

if(($a==1)&&($b==1)) - będzie na czerwono tylko 1

if(($a==1)||($b==1)) - jak to działa, że przechodzi dalej? np jak $a ma 1, a $b nie, to wyświetli się na czerwono, a co dalej?

sadistic_son
Druga petla jest wewnatrz pierwszej. Pierwsza wykona sie 10 razy a druga 100 razy, po 10 razy dla kazdego z powtorzen petli I. Petla I tworzy <tr> a II <td>, wierszy jest 10 a komorek 100.
$a bedzie rowne 1 tylko jeden raz dla petli pierwszej i 10 razy dla drugiej.
$b natomiast bedzie ==1 jeden raz przy kazdym powtorzeniu petli pierwszej.

Dla powyzszej tabeli I wiersz i I kolumna beda czerwone. Dzieje sie tak ze petla pierwsza tworzy wiersze a druga komorki. Czyli dla $a == 1 (pierwszy wiersz) warunek jest spelniony tylko ten jeden raz. Natomiast I kolumna jest czerwona bo $b jest == 1 przy kazdym pierwszym przeskoku petli drugiej, czyli przy kazdym przeskoku petli pierwszej.
Pozostale komorki nie sa czerwone bo ani $a ani $b nie sa ==1.

Zmien kod w ponizszy sposob a zobaczysz obrazowo czemu tak sie dzieje:
  1. echo '<table border="1">';
  2. for($a=1; $a<=10; $a++)
  3. {
  4. echo '<tr>';
  5. for($b=1; $b<=10; $b++)
  6. {
  7. if(($a==1)||($b==1))
  8. {
  9. echo '<td bgcolor="red">a='.$a.',b='.$b.'<br />'.$a.'*'.$b.'='.$a*$b.'</td>';
  10. }
  11. else
  12. {
  13. echo '<td>a='.$a.',b='.$b.'<br />'.$a.'*'.$b.'='.$a*$b.'</td>';
  14. }
  15.  
  16. }
  17. echo'</tr>';
  18.  
  19. }
  20.  
  21. echo '</table>';
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.