Random Zahl mit fester Länge
Möchte ich generieren, die eine zufällige integer-Zahl mit zahlen 0-9 und mit Länge = 5. Ich versuche dieses:
function genRand(min,max) {
for (var i = 1; i <= 5; i++) {
var range = max - min + 1;
return Math.floor(Math.random()*range) + min;
}
}
und rufen:
genRand(0,9);
Aber es gibt immer 1 Nummer 5 nicht (
Hilfe bitte!
Also, Sie wollen eine zufällige, 5-stellige Zahl ist, was Sie sagen? Es ist nicht klar.
generiert zufällig 5 einzelne Ziffern von 0 bis 9, und fügen Sie Sie
"einfügen"? Könnten Sie auch einige der gewünschten Ergebnisse, was, die Sie wollen, dass die Funktion zurück? String "07198" oder " Array (Objekt) [0,7,1,9,8] ?
generiert zufällig 5 einzelne Ziffern von 0 bis 9, und fügen Sie Sie
"einfügen"? Könnten Sie auch einige der gewünschten Ergebnisse, was, die Sie wollen, dass die Funktion zurück? String "07198" oder " Array (Objekt) [0,7,1,9,8] ?
InformationsquelleAutor skywind | 2011-12-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Math.random gibt eine Zufallszahl zwischen 0 (inklusive) und 1 (exklusive). Daher könnten Sie stattdessen tun, Math.floor(Math.random() * 90000) + 10000 wie bist du garantiert nie zu generieren 90000.
89999 kommt von der maximal 5-stellige Nummer möglich (99999) - die niedrigsten 5-stelligen Zahl möglich (10000)
InformationsquelleAutor Nate B
return
beendet die Funktion, auf die erste Schleife.InformationsquelleAutor graphicdivine
Die kleinste 5-stellige Zahl 10000, die größte ist 99999, - oder 10000+89999.
Return eine Zufallszahl zwischen 0 und 89999, und fügen Sie es auf das minimum.
Math.floor rundet ab, und Math.random ist größer als oder gleich 0 und kleiner als 1.
InformationsquelleAutor kennebec
Bekommen eine 5-stellige Zufallszahl, die generiert zufällige zahlen, die zwischen dem Bereich (10000, 99999). Oder generiert zufällig 5 Einzel-Ziffern und fügen Sie Sie.
BEARBEITEN
Den Prozess, den Sie gezeigt haben, wird einfach generieren einer Nummer und an den Aufrufer zurückgeben. Die denken, die vielleicht Arbeit ist (pseudo-code) :
Oder besser generieren 5-stellige Zufallszahlen mit
rand (10000, 99999)
ist es nicht besser, einfach Zufallszahlen im Bereich (10000, 99999) ?? Für das einfügen der 5 zufällig generierten Ziffern (0 bis 9), die Sie durchführen müssen 5 Multiplikationen und 5 Additionen.
Ja. es ist besser!!)
InformationsquelleAutor phoxis
Hier ist eine allgemeinere version von Nate B ' s Antwort:
InformationsquelleAutor Airhogs777