Generieren von Zufallszahlen mit Swift
Muss ich eine Zufallszahl erzeugen.
Scheint es, dass die arc4random
Funktion nicht mehr vorhanden ist sowie die arc4random_uniform
Funktion.
Den Optionen habe ich sind arc4random_stir()
arc4random_buf(UnsafeMutablePointer<Void>, Int)
und arc4random_addrandom(UnsafeMutablePointer<UInt8>, Int32)
.
Ich finde keine Dokumentation über die Funktionen und keine Kommentare in die header-Dateien Hinweise geben.
InformationsquelleAutor der Frage Big_Mac_24 | 2015-09-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
===== Swift-4.2 /Xcode 10 =====
===== Swift-4.1 /Xcode 9 =====
arc4random()
gibt eine Zufallszahl im Bereich von 0 zu 4 294 967 295drand48()
gibt eine Zufallszahl im Bereich von 0.0 zu 1.0arc4random_uniform(N)
gibt eine Zufallszahl im Bereich von 0 zu N - 1Beispiele:
arc4random_uniform() wird empfohlen, über Konstruktionen wie
arc4random() % upper_bound
als es vermeidet "modulo-bias", wenn die Obere Grenze ist nicht eine Potenz von zwei.InformationsquelleAutor der Antwort Arsen
Könntest du auch probieren:
Ich musste hinzufügen "UInt32", damit es funktioniert.
InformationsquelleAutor der Antwort Fernando Cardenas
Nach einigen Untersuchungen ich schrieb:
Jetzt können Sie nur tun
Math.randomFraction()
um Zufallszahlen [0..1[ ohne sich daran zu erinnern seeding ersten. Hoffe, das jemand hilft :o)InformationsquelleAutor der Antwort Melodius
Rufen Sie einfach diese Funktion und bieten minimale und maximale Reichweite von Zahl und Sie erhalten eine zufällige Nummer.
zB.wie randomNumber. (MIN: 0, MAX: 10) und Sie erhalten eine Zahl zwischen 0 bis 9.
Beachten Sie:- Sie erhalten immer die Ausgabe einer Integer-Zahl.
InformationsquelleAutor der Antwort PRAVEEN
Andere Möglichkeit ist die Verwendung des xorshift128plus Algorithmus:
Dieser Algorithmus hat eine Laufzeit von 2^128 - 1 und übergibt alle tests von der BigCrush test-suite. Beachten Sie, dass, während dies ist eine hohe Qualität der pseudo-Zufallszahl-generator mit einer langen Periode, es ist nicht ein kryptografisch sicherer Zufallszahlengenerator.
Könnten Sie Samen es von der aktuellen Zeit oder jeder anderen zufälligen Quelle von Entropie. Zum Beispiel, wenn Sie hatte eine Funktion namens
urand64()
dass Lesen eineUInt64
aus/dev/urandom
Sie können es verwenden, wie diese:InformationsquelleAutor der Antwort David Conrad
InformationsquelleAutor der Antwort Rajesh Sharma
Meine Umsetzung als eine Int-Erweiterung. Generiert zufällige zahlen im Bereich
from..<to
InformationsquelleAutor der Antwort anatoliy_v
können Sie diese in spezifischen rate:
InformationsquelleAutor der Antwort M.zar
In Swift 3 :
Generiere random Zahl zwischen 0-Grenze
InformationsquelleAutor der Antwort Mili Shah
Können mit Swift-Code für die Zufallszahl oder zufällige Zeichenkette 🙂
wird es geben Sie die Ausgabe nach dem Zufallsprinzip.
InformationsquelleAutor der Antwort Azharhussain Shaikh
Vergessen Sie nicht, dass einige zahlen wiederholen! also müssen Sie etwas tun, wie....
meine totalQuestions war 47.
InformationsquelleAutor der Antwort user2986119
Dies ist, wie bekomme ich eine zufällige Zahl zwischen 2 int ' s!
Verwendung:
InformationsquelleAutor der Antwort Ilan Sagital
Update mit swift 4.2 :
InformationsquelleAutor der Antwort Quentin N
schauen, ich hatte das gleiche problem, aber ich einfügen
die Funktion als Globale variable
als
natürlich ist dies nicht effizient, so dass ich dann einfach kopieren und fügen Sie den code in der Funktion, so könnte es wiederverwendbar sein, dann xcode schlage vor, mich um den var als konstant, so meine code waren
auch das ist ein Teil meines Codes, so dass xcode erzählen Sie mir etwas von inmutable und Initialisierung aber, es bauen sich die app sowieso und, dass die Beratung einfach verschwinden
hoffe es hilft
InformationsquelleAutor der Antwort Parada11.04