Τυχαίος αριθμός Γεννήτρια
Δημιουργήστε τυχαίους αριθμούς αμέσως στο πρόγραμμα περιήγησής σας. Προσαρμόστε το εύρος, το πλήθος και τη μορφή. Δωρεάν, ιδιωτικά και δεν αποστέλλονται δεδομένα σε κανένα διακομιστή.
Δημιουργία
Δημιουργήστε τυχαίους αριθμούς αμέσως στο πρόγραμμα περιήγησής σας. Προσαρμόστε το εύρος, το πλήθος και τη μορφή. Δωρεάν, ιδιωτικά και δεν αποστέλλονται δεδομένα σε κανένα διακομιστή.
Δημιουργία
Οι γεννήτριες τυχαίων αριθμών παράγουν αριθμούς εντός ενός καθορισμένου εύρους χωρίς προβλέψιμο μοτίβο. Συνήθεις εφαρμογές περιλαμβάνουν τη ρίψη ζαριών, την επιλογή αριθμών λοταρίας, τη δειγματοληψία για στατιστική εργασία, τη δημιουργία δεδομένων δοκιμής και οποιοδήποτε πλαίσιο όπου απαιτείται αμερόληπτη επιλογή. Η ποιότητα της τυχαιότητας εξαρτάται από την πηγή: οι αδύναμες πηγές μπορούν να παράγουν αριθμούς που φαίνονται τυχαίοι αλλά έχουν ανιχνεύσιμα μοτίβα. Οι ισχυρές πηγές είναι απρόβλεπτες έως και πολύπλοκες αναλύσεις.
Αυτή η γεννήτρια χρησιμοποιεί την κρυπτογραφικά ασφαλή τυχαία πηγή του προγράμματος περιήγησης (window.crypto.getRandomValues) για χρήσεις που σχετίζονται με την ασφάλεια, με προαιρετική εναλλακτική Math.random για ψυχαγωγικές χρήσεις όπου η ταχύτητα έχει μεγαλύτερη σημασία από την ασφάλεια. Για ζάρια, επιλογές διαγωνισμών ή οτιδήποτε επηρεάζει τα αποτελέσματα, η ασφαλής πηγή είναι η σωστή επιλογή.
Το εύρος εξόδου και ο αριθμός είναι διαμορφώσιμοι. Δημιουργήστε έναν αριθμό, πολλούς ταυτόχρονα ή μια ακολουθία με προαιρετική μοναδικότητα (χωρίς διπλότυπα). Οι μορφές εξόδου περιλαμβάνουν απλούς αριθμούς, λίστες διαχωρισμένες με κόμματα και κείμενο ένα ανά γραμμή.
Πολλές μικρές αποφάσεις επωφελούνται από την αμερόληπτη τυχαία επιλογή. Η επιλογή ενός νικητή για έναν διαγωνισμό, η επιλογή του εστιατορίου που θα δοκιμάσετε, η τυχαιοποίηση της σειράς των δοκιμαστικών περιπτώσεων, η δειγματοληψία σειρών από ένα σύνολο δεδομένων — όλα βελτιώνονται από μια γεννήτρια τυχαίων αριθμών που αποκλείει την ανθρώπινη προκατάληψη.
Η στατιστική και επιστημονική εργασία εξαρτάται επίσης από την ποιοτική τυχαιότητα. Οι προσομοιώσεις Monte Carlo, η εκχώρηση κάδου δοκιμής A/B, η τυχαιοποίηση των εισόδων δοκιμής και πολλές άλλες τεχνικές χρειάζονται αριθμούς που είναι στατιστικά ομοιόμορφοι και απρόβλεπτοι για το υπό μελέτη σύστημα.
Ορίστε εύρος και μετρήστε, δημιουργήστε.
Τυχαία δημιουργία ακεραίων: λάβετε ένα τυχαίο byte (ή λέξη) από το crypto.getRandomValues, εφαρμόστε δειγματοληψία απόρριψης για να αποφύγετε την προκατάληψη modulo, αντιστοιχίστε στο επιθυμητό εύρος. Το απλό modulo χωρίς δειγματοληψία απόρριψης παράγει ελαφρά προκατάληψη για εύρη που δεν διαιρούνται ομοιόμορφα στο εύρος της πηγής. Η δειγματοληψία απόρριψης το αποφεύγει.
Δημιουργία ομοιόμορφων ακεραίων χωρίς μεροληψία: δημιουργήστε τυχαία byte, εάν byte > πάτωμα (256/εύρος) × εύρος, απορρίψτε και δοκιμάστε ξανά, διαφορετικά επιστρέψτε το εύρος mod mod byte. Το ποσοστό απόρριψης είναι το πολύ 50% κατά μέσο όρο, επομένως ο αλγόριθμος είναι πρακτικά γρήγορος ακόμη και για άβολα εύρη.
Math.random έναντι crypto.getRandomValues: Το Math.random είναι πιο γρήγορο αλλά χρησιμοποιεί xorshift ή παρόμοια PRNG που μπορούν να προβλεφθούν με επαρκή έξοδο. Το crypto.getRandomValues είναι κρυπτογραφικά ασφαλές. Για χρήση χωρίς ασφάλεια (ζάρια, περιστασιακές επιλογές), είτε λειτουργεί. για ασφάλεια, χρησιμοποιήστε κρυπτογράφηση.