Autor | Zpráva | ||
---|---|---|---|
tony2 Profil |
#1 · Zasláno: 11. 7. 2009, 08:34:36 · Upravil/a: tony2
Zdarec prosimvás zkontrolovali by jste mi tento zdroják a zdrželi se blbých komentářů.Na řádku 8 mám možná chybu v tom počítání
<form> <input value="cislo"> <input type="submit" value="Ověřit"> </form> <?php $delitel = 2; if (gettype($_POST['cislo'])!="integrer") { for ($cislo = $_POST['cislo']; $delitel <= $cislo;$_POST['cislo']=$cislo $cislo/$delitel $delitel++ ) { if (gettype($cislo)=="integer") { echo ("Toto číslo není prvočíslo"); break; } elseif ($delitel == $cislo and gettype($cislo)=="float") { echo ("Toto číslo je prvočíslo!"); } else {} } } else { echo ("Zadejte prosím <b>celé číslo</b>"); } ?> |
||
tony2 Profil |
#2 · Zasláno: 11. 7. 2009, 08:36:25
Nějak mi blbne editace tak píšu sem ještě že to má kontrolovat jestli je číslo prvočíslo
|
||
Europsky_Dzigolo Profil |
#3 · Zasláno: 11. 7. 2009, 08:48:52 · Upravil/a: Europsky_Dzigolo
for ($cislo = $_POST['cislo']; $delitel <= $cislo;$_POST['cislo']=$cislo $cislo/$delite; $delitel++ ) { asi tak |
||
fuckin Profil |
#4 · Zasláno: 11. 7. 2009, 08:52:21
tamty hodnoty ve foru nemaji co delat...
|
||
asdfasdf Profil * |
#5 · Zasláno: 11. 7. 2009, 09:35:19
Mě to vypisuje:
Parse error: syntax error, unexpected T_VARIABLE, expecting '(' in /home/www/oderskebrzdy.cz/subdomeny/test2/prvocislo.php on line 8 Nevíte kde má být ta závorka? |
||
Nox Profil |
#6 · Zasláno: 11. 7. 2009, 09:50:18 · Upravil/a: Nox
Opravuji a doplňuji Europského_Dzigola
for ($cislo = $_POST['cislo']; $delitel <= $cislo;$_POST['cislo']=$cislo,$cislo/$delitel, $delitel++ ) { Ten cyklus mi přijde dost nesmyslný, proměnnou $cislo máš v ukončovací podmínce, ale přitom ho napravo modifikuješ, je to fakt dobře? Jinak by to šlo napsat function jePrvocislo($cislo) { $limit = round(sqrt((int)$cislo)); for($delitel = 0; $delitel <= $limit; $delitel++) if( $cislo%$delitel == 0) return true; return false; } |
||
Alphard Profil |
#7 · Zasláno: 11. 7. 2009, 11:55:05
Nox:
To také není to pravé. Funkce jePrvocislo by měla vracet true, pokud je dané číslo prvočíslo a naopak. Takže prohodit výstupní hodnoty. Navíc nemůžete dělit nulou. (Pozor, dělitel musí začínat na 2). function jePrvocislo($cislo) { $limit = ceil(sqrt((int)$cislo)); for($delitel = 2; $delitel <= $limit; $delitel++) if(($cislo % $delitel) === 0) return false; return true; } |
||
Nox Profil |
#8 · Zasláno: 11. 7. 2009, 13:18:15
Alphard
Chybka, děkuji za opravu, psal jsem to narychlo |
||
tony2 Profil |
#9 · Zasláno: 11. 7. 2009, 17:08:55
no díky za ten řádek ale nefunguje mi to ještě tam mám nějakou chybu ono když zadám číslo tak ono to nic neuděla nebo se stranka znova nahraje ale jinak nic...
já bych chtěl mit to moje řešení |
||
Alphard Profil |
#10 · Zasláno: 12. 7. 2009, 00:03:59
tony2:
„ale nefunguje mi to“ Používáte tu funkci správně? Je funkční. echo "Sedmička " . (jePrvocislo(7) ? "je" : "není") . " prvočíslo."; „já bych chtěl mit to moje řešení“ V tom vám níkdo nebrání, upravte se to podle "našeho" vzoru. |
||
Časová prodleva: 15 let
|
0