Autor Zpráva
e
Profil *
Nejak mi ty funkce nebre promenne n aktere odkazuji..diky za radu
<?


function nahodneCislo($min=1,$max=100)
{
  
    $nah_cislo=mt_rand($min,$max);
      
    return ($nah_cislo);  
   
}

function VkladDoPole($Vel_Pole=20){
   
   for ($i=1; $i<$Vel_Pole; $i++):
   $pole1[$i]=nahodneCislo(); 



endfor;

 return ($pole1);


 }



function Zvys($pole1,$Sance=5){


$x=nahodneCislo();

$nah_hodnota=$pole1[x];


   for ($k=1; $i<$Sance; $k++):
      $y=nahodneCislo($min=1,$max=20);

      $pole1[$y]=$nah_hodnota;
      endfor;


return ($pole1);


}

function Vyhodnoti($pole1,$nah_hodnota){

     $x=nahodneCislo($min=1,$max=20);
     $vyhra=TRUE;


 if ($nah_hodnota==pole1[x]);
    return ($vyhra);

  else return($vyhra=FALSE);
   
}

VkladDoPole();
Zvys();
Vyhodnoti();
Chamurappi
Profil
Reaguji na e:
Nejak mi ty funkce nebre promenne n aktere odkazuji
Napiš svůj dotaz laskavě česky a s diakritikou, jak žádají pravidla.
(To, co jsi napsal, vlastně ani není dotaz, jen nějaké neurčité konstatování.)
e
Profil *
Funkce mi prostě nepřebírají t yproměnné, ktere chcu i když je v mainu volám podle pořadí...píše nejsou ty proměnné defionované-nevím jestli je tam mam vůbec psát nebo ne.
Majkl578
Profil
Zkoušel jsi aspoň, jestli ten kód funguje? Skončí totiž chybou při parsování.

Pro funkci nahodneCislo nevidím žádný pořádný význam.
V tomto kódu: $y=nahodneCislo($min=1,$max=20); jsou k ničemu proměnné $min a $max.
Zde: if ($nah_hodnota==pole1[x]); chybí $ u názvu proměnné a uvozovky/apostrofy u klíče pole.

Doporučuji přečíst si základy PHP.
fuckin
Profil
Jelikož to jsou funkce které vracejí hodnotu, tak ta vrácená hodnota se ti ztratí jelikož jsi ji nikde neukládáš.
e
Profil *
hmm takze jina moznost, nez ukladani do databaze neni? diky za odpovedi..v PHP zacinam....
Joker
Profil
e:
takze jina moznost, nez ukladani do databaze neni?
Je, napsat to správně.
Viz Majkl578, „Doporučuji přečíst si základy PHP.
e
Profil *
<?


function nahodneCislo($min,$max)
{
  global $min,$max;
    $nah_cislo=mt_rand($min,$max);
      
    return ($nah_cislo);  
   
}

function VkladDoPole($Vel_Pole){
   global $min,$max;
   for ($i=1; $i<$Vel_Pole; $i++):
   $pole1[$i]=nahodneCislo($min,$max); 



endfor;

 return ($pole1);


 }



function Zvys($Sance){
global $pole1,$min,$max;

$x=nahodneCislo($min,$max);

$nah_hodnota=$pole1[$x];


   for ($k=1; $k<$Sance; $k++):
      $y=nahodneCislo($min,$max);

      $pole1[$y]=$nah_hodnota;
      endfor;


return ($pole1);


}

function Vyhodnoti(){
global $pole1,$nah_hodnota,$min,$max;
     $x=nahodneCislo($min,$max);
     $vyhra=TRUE;


 if ($nah_hodnota==$pole1['x']){
    return ($vyhra);}

  else {return($vyhra=FALSE);}
   
}

nahodneCislo(1,20);
VkladDoPole(20);
Zvys(5);
Vyhodnoti();



Píše mi to u :
 if ($nah_hodnota==$pole1['x']){
,že je nedefinováno x...
Alphard
Profil
Kdybyste radši slovy (a srozumitelně) popsal, čeho chcete dosáhnout. Ideální by byl příklad.
e
Profil *
No jendušše, aby fungovala tato jednoducha věc, protože ted jsem to sice zprovoznil nějak, ale metody VkladDoPole a Zvys vubec nezapisuji prvky to pole..kdyz jsem je dal vypsat, tak každému indexu bylo přiřazeno pouze 0; jinak netuším jestli mám tyto Global. proměnné v pořádku; Výsledek je ten , že to vypisuje furt 1=TRUe, (protože sam.0=0).................mají to být jednoduché funkce..ve třídě "Pravděpodobnost" , ktereé vyberou nahodné prvky do pole , v tom poli se pak libovolny prvek rozmnoz-X krat..apak se náhodně "táhne"-ta metoda je tam navic, je jenom kvuli toho..jestli to funguje aspon nějak
_es
Profil
e:
Máš to rozbité.
Alphard
Profil
e:
Já se neptám, jak to nefunguje, ale čeho chcete dosáhnout.
Z vás asi nic nedostanu, tak se zeptám přímo, snažíte se vytvořit generování náhodného čísla s pravděpodobností?
Dám příklad
$nastaveni = array(1 => 20, 2 => 40.5, 3 => 0.5, 4 =>9, 5 => 30);
echo nahodne($nastaveni);

Vyber náhodné číslo z rozsahu 1 až 6 s tím, že 1 má pravděpodobnost 20 %, 2 40,5 % atd. Jde vám o tohle? Pokud ne, pokuste se obdobným způsobem popsat váš záměr.

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:

0