Hogy csináljam, hogy a random. Next (7.5) -öt elfogadja, mint egy metódus double paraméterét?
Azt írja, hogy a random az intet ad át, és nem double-t ezért a törtszám miatt sír! valami konvertálásos megoldásra gondoltam, de itt nem lehet a Parse-t használni! Választ előre is köszönöm.
ui.: pontosan így néz ki:
listhalak.Add(new Taviponty(rnd.Next(7.5)+1, 90));
így meg már elfogadja:
listhalak.Add(new Taviponty(rnd.Next(7)+1, 90));
a random nem fog doublet elfogadni semmikor.
Beírhatod, hogy 7.5 , de azt castolni kell int-té és az lesz belőle, mint a második, működő sorod.
listhalak.Add(new Taviponty(rnd.Next((int) 7.5)+1, 90));
De ennek smemi értelme, hogy átcastolod int-té. Ennyi erővel beírhattad volna, hogy 7, és akkor nem kell castolni. Ha megnézed akkor láthatod, hogy soha nem kapsz kaphatsz 8 és 8,5 közötti eredményt. Ezt úgy érheted el, hogy a 2x-es intervallumban generálod a számokat, majd leosztod 2.0-val:
listhalak.Add(new Taviponty(rnd.Next(15)/2.0+1, 90));
Pontosítok picit. a rand((int)7.5)+1 értéke 1 és 7 közötti egész szám (belertve a 1-et és 7-et.
Ha ezt írod, hogy rand(16)/2.0+1, akkor 1 és 8.5 közötti számot kapsz ami lehet egész vagy 0,5-re végződő.
Milyen értékeket szeretnél pontosan?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!