Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Jak stworzyć szachownicę w php ?
Agula
post 3.11.2009, 15:27:22
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 3.11.2009

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


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.  


Ten post edytował Agula 3.11.2009, 15:31:05
Go to the top of the page
+Quote Post
marcio
post 3.11.2009, 15:29:25
Post #2





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Musisz uzyc operator %(modulo) na index'y tablicy gdy zwroci on 0 dajesz bialy kolor gdy zwroci > 0 to czarny i powinno dzialac.


--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
Agula
post 3.11.2009, 15:36:35
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 3.11.2009

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


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>
Go to the top of the page
+Quote Post
marcio
post 3.11.2009, 15:41:53
Post #4





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


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.



--------------------
Zainteresowania: XML | PHP | MY(SQL)| C# for .NET | PYTHON
http://code.google.com/p/form-builider/
Moj blog
Go to the top of the page
+Quote Post
MateuszS
post 3.11.2009, 15:45:54
Post #5





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


  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


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
Agula
post 3.11.2009, 15:57:15
Post #6





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 3.11.2009

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


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.
Go to the top of the page
+Quote Post
piotrooo89
post 3.11.2009, 16:04:45
Post #7


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




źle sterowałaś pętlami, błąd logiczny.


--------------------
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: 14.08.2025 - 15:18