Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Jak sprawdzić liczby pierwsze?
suck
post
Post #1





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 7.03.2006

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


witam,
mam takie pytanie:

mam taki oto kod generujacy prosta tabelke, ktora jest tabliczka mnozenia

  1. <?php
  2. echo '<table border=1>';
  3. for ($x=1; $x<11; $x++)
  4. {
  5. echo '<tr>';
  6. for ($y=1; $y<11; $y++)
  7. echo '<td>' .$x*$y;
  8. }
  9. ?>
  10. </table>
(IMG:http://forum.php.pl/uwaga.gif)
poprawiam
---
nospor



i chcialbym teraz aby zaznaczone byly tylko liczby pierwsze, przez <td bgcolor="green">, jak to zrobic?
Go to the top of the page
+Quote Post
hwao
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




  1. <?php
  2. function isLiczbaPiersza( $iLiczba ) {
  3. $bJest = true;
  4. $iDo = round( ($iLiczba/2) );
  5. for( $i=2; $i<$iDo; $i++ ) {
  6.  if( $i%) {
  7. $bJest = false;
  8. break;
  9.  }
  10. }
  11.  
  12. return $bJest;
  13. }
  14. ?>


I teraz robisz

  1. <?php
  2. if( isLiczbaPiersza( $taLiczbaCoSprawdzasz ) ) {
  3. echo 'piersza';
  4. } else {
  5. echo 'normalna';
  6. } 
  7. ?>


W ogole to co to za dziwny html z ta tableka?
Go to the top of the page
+Quote Post
suck
post
Post #3





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 7.03.2006

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


czemu dziwny?
mnie chodzi o to, zeby po wygenerowaniu tej tabelki, liczby pierwsze w komorce tabeli mialy tam inne tlo w jakims kolorze

Ten post edytował suck 7.03.2006, 23:19:31
Go to the top of the page
+Quote Post
rbart
post
Post #4





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 1.03.2006

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


Ja zrobiłem to tak :

  1. <table border=1>
  2.  
  3. <?php
  4. $a=array();
  5. $a[0]=1;
  6. $c=0;
  7. $d=0;
  8. for ($x=1; $x<11; $x++)
  9. {
  10. echo '<tr>';
  11. for ($y=1; $y<11; $y++)
  12. {
  13. $xy = $x * $y;
  14.  
  15. foreach($a as $b)
  16. {
  17. if($xy==$b)
  18. {
  19. echo "<td bgcolor=\"green\">".$xy."</td>";
  20. $d=1;
  21. }
  22. else
  23. {
  24. $m=$xy % $b;
  25. if($m==0)$c++;
  26.  ;
  27. }
  28.  
  29. }
  30.  
  31. if($c > 1)echo "<td>".$xy."</td>";
  32. else
  33. {
  34. if($d==0)
  35. {
  36. $c=count($a);
  37. $a[$c]=$xy;
  38. echo "<td bgcolor=\"green\">".$xy."</td>";
  39. }
  40. }
  41.  
  42. $d=0;
  43. $c=0;
  44. }
  45. echo '<tr>
  46. ';
  47. }
  48. ?>
  49. </table>


Apropo jeżeli coś piszesz to warto sprawdzać kod wynikowy (nie zamknąłeś żadnego TR'a )
Go to the top of the page
+Quote Post
suck
post
Post #5





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 7.03.2006

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


wiem, ze nie zamknolem, ale to nie ma AZ tak wielkiego znaczenia jesli robi sie taki rzeczy, pod Opere i IE dziala to bez problemu, bo nie mozna zagniezdzac wierszy oraz kolumn wiec przegladarka i tak to poprawnie zinterpretuje
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 22:20