Autor | Zpráva | ||
---|---|---|---|
Jakubaull Profil |
#1 · Zasláno: 13. 5. 2012, 16:02:15
Dobrý den, co mám dělat, aby se mi vypsalo 10 náhodných příkladů do 100. Pořád to vypisuje libovolný počet. Předem děkuji.
<? $znamenko=array (1=> "*","+","-","+"); for($c=0;$c<=10;$c++) { for ($i=0;$i<10;$i++) { $prvni= rand(0,100); $druhy = rand(0,100); $vysledek= $prvni*$druhy; if ($vysledek<=100) { $i-1; echo $prvni.$znamenko[1].$druhy."=".$vysledek."</br>"; } } } ?> |
||
Casero Profil |
Jakubaull:
<? $znamenko=array (1=> "*","+","-","+"); for($c=0;$c<10;$c++) { $prvni= rand(0,100); $druhy = rand(0,100); $vysledek= $prvni*$druhy; while($vysledek>100) { $prvni= rand(0,100); $druhy = rand(0,100); $vysledek= $prvni*$druhy; } echo $prvni.$znamenko[1].$druhy."=".$vysledek."</br>"; } ?> Moderátor Majkl578: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
|
||
nemeja Profil |
#3 · Zasláno: 13. 5. 2012, 19:58:53
Tady jsem vytvořil funkci na vytvoření náhodného příkladu s nejčastějšími operátory.
<?php function vytvorPriklad($vysledek=false, $max_gen_cislo = false){ if(!$max_gen_cislo){ $max_gen_cislo = 1000; // nastavuje maximalni velikost generovaného čísla pro $vysledek pokud neni zadanej a pro první člen u mínusu } if($vysledek){ $vysledek = (int)$vysledek; // pokud je zadán výsledek, tak ho to přetypuje } else { $vysledek = mt_rand(0,$max_gen_cislo); // pokud neni zadán výsledek, tak ho vygeneruje } $operatory = array("+","-","*","/"); // operatory pro příklad $operator = $operatory[mt_rand(0,count($operatory)-1)]; // vybere náhodný operátor switch($operator){ // na základě operátorů generuje první člen a druhý dopočítává case "+": $prvni = mt_rand(0,$vysledek); $druhy = $prvni - $vysledek; break; case "-": $prvni = mt_rand($vysledek,$max_gen_cislo); $druhy = $vysledek - $prvni; break; case "*": $prvni = mt_rand(1,$vysledek); $druhy = $vysledek / $prvni; break; case "/": $prvni = mt_rand(0,$vysledek); $druhy = $prvni / $vysledek; break; default: return false; // pokud se náhodou nevybral operátor, ukončuje funkci break; } return array("prvni_cast" => abs($prvni), "operat" => $operator, "druha_cast" => abs($druhy), "vysledek" => $vysledek); // vrací části příkladu v poli } ?> <?php for($i=0;$i < 10;$i++){ var_dump(vytvorPriklad(100)); } ?> |
||
Časová prodleva: 12 let
|
0