Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Jak stworzyć szachownicę w php ?
Forum PHP.pl > Forum > Przedszkole
Agula
Witam,

Jestem zupełnie zielonym użytkownikiem języka PHP, po pierwszych zajęciach na uczelni. Jako zadanie domowe, mam stworzyć szachownicę z tabliczki mnożenia. A dokładnie: tabliczkę mnożenia w tabeli 10x10 zrobiliśmy na zajęciach, w domu mamy pokolorować pole tak, aby w rzędach nieparzystych co drugie pole było czarne, a rzędach parzystych, co drugie pole białe. Zacząć mamy od białego koloru.

Czy dobrze domyślam się, że potrzebny będzie if oraz else? Nie mam pojęcia jak to "ugryźć", walczyłam sama dwa dni i nic..
Kod z tabliczki mnożenia wygląda tak:

  1.  
  2. <BODY>
  3.  
  4. <?
  5.  
  6. echo "<table border=\"1\">";
  7.  
  8. for($x=1;$x<=10;$x++){
  9.  
  10. echo "<tr>";
  11.  
  12. for($y=1;$y<=10;$y++){
  13.  
  14. echo "<td>";
  15.  
  16. echo $x*$y;
  17.  
  18. echo "</td>";
  19.  
  20. }
  21.  
  22. echo "</tr>";
  23.  
  24. }
  25.  
  26. echo "</table>";
  27.  
  28. ?>
  29.  
  30. </BODY>
  31.  
  32. </HTML>
  33.  
marcio
Musisz uzyc operator %(modulo) na index'y tablicy gdy zwroci on 0 dajesz bialy kolor gdy zwroci > 0 to czarny i powinno dzialac.
Agula
Hmmm, wystukałam coś takiego, ale nadal nie działa..

  1. <?
  2.  
  3. echo "<table border=\"1\">";
  4.  
  5. for($x=1;$x<=10;$x++){
  6. if($x%==0){
  7. $style="background-color:white;";
  8. }
  9. else
  10. {
  11. $style="background-color:black;";}
  12. if($y%2=0){
  13. $style="background-color:white;";
  14. }
  15. else
  16. {
  17. $style="background-color:black;";}
  18. if($y%2==0){
  19. $style="background-color:white;";}
  20. else
  21. {
  22. $style="background-color:black;";}
  23. echo "<tr>";
  24. for($y=1;$y<=10;$y++){
  25. echo "<td>";
  26. echo $x*$y;
  27. echo "</td>";
  28. }
  29. echo "</tr>";
  30. }
  31. echo "</table>";
  32. ?>
  33. </BODY>
  34. </HTML>
marcio
po pierwsze warunki dotyczace $y masz przed petla.

2 to to ze w pierwszej petli wyswitlasz <tr> a w drugiej <td></td> z wybranym kolorem i bedzie hulalo.

MateuszS
  1. <?
  2.  
  3. echo '<table border="1"><tr>';
  4.  
  5. $x=10;
  6. $y=10;
  7. $pol=$x*$y;
  8.  
  9. $c=0;
  10. $k=1;
  11. while($k<$pol) {
  12. if($k%2==0) {
  13. $color='black';
  14. } else {
  15. $color='white';
  16. }
  17. if($c==10) {
  18. echo '</tr><tr>';
  19. $c=0;
  20. } else {
  21. echo '<td style="background-color: '.$color.'; width: 50px; height: 50px; border: 1px solid black;"></td>';
  22. $c++;
  23. }
  24. $k++;
  25. }
  26.  
  27.  
  28. echo '</table>';
  29.  
  30. ?>


Przeanalizuj sobie ten kod, mysle jest prostrzy niz ten ktory pisales
Agula
MateuszScirka - kod działa i szachownica jest-dziękuję bardzo smile.gif Marcio -również Ci dziękuję za pomoc. Jak wspomniałam zielona jestem w PHP zupełnie smile.gif Uparta również smile.gif Ponieważ chciałabym wiedzieć co robię źle, to bardzo proszę Was o wskazanie błędów w kodzie, który wkleiłam wcześniej - nie chcę ich powtórzyć w przyszłości.
piotrooo89
źle sterowałaś pętlami, błąd logiczny.
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.