Autor Zpráva
Jakubaull
Profil
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
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));    
  }
?> 

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: