Τυχαία γενιά. Πρόγραμμα δημιουργίας τυχαίων αριθμών Excel σε λειτουργίες και ανάλυση δεδομένων

Μια σαφής και βολική ηλεκτρονική γεννήτρια αριθμών, η οποία χρησιμοποιείται σε Πρόσφαταδημοτικότητα. Έλαβε τη μεγαλύτερη διανομή κατά την κλήρωση των δώρων στα κοινωνικά δίκτυα, μεταξύ των χρηστών.

Είναι επίσης δημοφιλές σε άλλες περιοχές. Επίσης έχουμε ή κωδικούς πρόσβασης και αριθμούς.

Η διαδικτυακή μας γεννήτρια τυχαίων αριθμών.

Η γεννήτρια τυχαιοποιητών μας δεν απαιτεί από εσάς να την κατεβάσετε στον προσωπικό σας υπολογιστή. Όλα συμβαίνουν στη λειτουργία δημιουργίας αριθμών σε απευθείας σύνδεση. Απλώς καθορίστε παραμέτρους όπως: μια σειρά διαδικτυακών αριθμών στους οποίους οι αριθμοί θα επιλέγονται τυχαία. Καθορίστε επίσης τον αριθμό των αριθμών που θα επιλεγούν.

Για παράδειγμα, έχετε μια ομάδα Vkontakte. Σε μια ομάδα, κληρώνετε 5 βραβεία, μεταξύ του αριθμού των συμμετεχόντων που αναδημοσιεύουν τη συμμετοχή. Με τη βοήθεια ειδικής εφαρμογής, λάβαμε μια λίστα συμμετεχόντων. Σε καθένα δόθηκε ένας σειριακός αριθμός για αριθμούς στο διαδίκτυο.

Τώρα πηγαίνουμε στην ηλεκτρονική μας γεννήτρια και υποδεικνύουμε το εύρος των αριθμών (αριθμός συμμετεχόντων). Για παράδειγμα, ζητάμε να χρειαστούν 5 αριθμοί online, αφού έχουμε 5 βραβεία. Τώρα πατάμε το κουμπί δημιουργίας. Μετά παίρνουμε 5 τυχαίους αριθμούς online, στην περιοχή από 1 έως 112 συμπεριλαμβανομένων. Οι 5 αριθμοί που δημιουργήθηκαν στο διαδίκτυο θα αντιστοιχούν στον αύξοντα αριθμό των πέντε συμμετεχόντων που αναδείχθηκαν νικητές της κλήρωσης. Όλα είναι απλά και βολικά.

Ένα άλλο πλεονέκτημα της γεννήτριας τυχαίων αριθμών είναι ότι όλοι οι διαδικτυακοί αριθμοί δημιουργούνται τυχαία. Δηλαδή, δεν είναι δυνατόν να το επηρεάσουμε, ή να υπολογίσουμε ποιος αριθμός θα είναι ο επόμενος. Αυτό που το κάνει έντιμο και αξιόπιστο, και η διοίκηση, που κληρώνει βραβεία με τη βοήθεια της δωρεάν γεννήτριας μας, είναι ειλικρινής και αξιοπρεπής απέναντι στους διαγωνιζόμενους. Και αν έχετε αμφιβολίες για μια λύση, τότε μπορείτε να χρησιμοποιήσετε τη δική μας

Γιατί η γεννήτρια τυχαίων αριθμών είναι η καλύτερη;

Γεγονός είναι ότι γεννήτρια αριθμών σε απευθείας σύνδεσηδιαθέσιμο σε οποιαδήποτε συσκευή και πάντα online. Μπορείτε να δημιουργήσετε ειλικρινά οποιονδήποτε αριθμό για οποιαδήποτε από τις ιδέες σας. Και το ίδιο για το έργο για χρήση γεννήτρια τυχαίων αριθμώνΣε σύνδεση. Ειδικά αν πρέπει να καθορίσετε τον νικητή του παιχνιδιού ή για διαφορετικό αριθμό στο διαδίκτυο. Γεγονός είναι ότι γεννήτρια τυχαίων αριθμώνδημιουργεί οποιουσδήποτε αριθμούς εντελώς τυχαία χωρίς αλγόριθμους. Βασικά είναι το ίδιο για τους αριθμούς.

Γεννήτρια τυχαίων αριθμών online δωρεάν!

Γεννήτρια τυχαίων αριθμών διαδικτυακά δωρεάν για όλους. Δεν χρειάζεται να κατεβάσετε ή να αγοράσετε κανένα γεννήτρια τυχαίων αριθμών online για κλήρωση. Απλά πρέπει να μεταβείτε στον ιστότοπό μας και να λάβετε το αποτέλεσμα που χρειάζεστε τυχαία. Δεν έχουμε μόνο γεννήτρια τυχαίων αριθμώναλλά χρειάζεται και από πολλούς που σίγουρα θα σας βοηθήσουν να κερδίσετε το λαχείο. Μια πραγματική ηλεκτρονική γεννήτρια τυχαίων αριθμών για λοταρίες είναι ένα απόλυτο ατύχημα. Το οποίο είναι σε θέση να σας παρέχει ο ιστότοπός μας.

Τυχαίος αριθμός σε απευθείας σύνδεση

Αν ψάχνετε για έναν τυχαίο αριθμό στο διαδίκτυο, τότε δημιουργήσαμε αυτόν τον πόρο μόνο για εσάς. Βελτιώνουμε συνεχώς τους αλγόριθμούς μας. Γίνεσαι αληθινός εδώ γεννήτρια τυχαίων αριθμών.Θα παρέχει οποιαδήποτε ανάγκη ως τυχαία γεννήτρια που χρειάζεστε εντελώς δωρεάν και ανά πάσα στιγμή. Δημιουργήστε τυχαίους αριθμούς online μαζί μας. Να είστε πάντα σίγουροι ότι κάθε αριθμός που δημιουργείται είναι εντελώς τυχαίος.

Γεννήτρια τυχαίων αριθμών

Η γεννήτρια τυχαίων αριθμών μας επιλέγει τυχαία αριθμούς εντελώς τυχαία. Δεν έχει σημασία ποια μέρα ή ώρα έχετε στον υπολογιστή σας. Αυτή είναι μια πραγματικά τυφλή επιλογή. Η τυχαία γεννήτρια απλώς ανακατεύει όλους τους αριθμούς τυχαία. Και στη συνέχεια επιλέγει τυχαία από αυτούς τον αριθμό των τυχαίων αριθμών που ορίσατε. Μερικές φορές οι αριθμοί μπορούν να επαναληφθούν, γεγονός που αποδεικνύει την πλήρη τυχαιότητα της γεννήτριας τυχαίων αριθμών.

Τυχαία online

Το τυχαίο είναι η πιο σίγουρη επιλογή για την κλήρωση. Η διαδικτυακή γεννήτρια είναι πραγματική τυχαία επιλογή. Προστατεύεστε από οποιαδήποτε επιρροή στην επιλογή ενός τυχαίου αριθμού. Κινηματογράφηση της διαδικασίας τυχαίας διαδικτυακής επιλογής του νικητή σε βίντεο. Αυτό είναι το μόνο που χρειάζεστε. Παίξτε δίκαιες διαδικτυακές φάρσες με το δικό μας διαδικτυακή γεννήτριααριθμοί. Παίρνετε νικητές και ικανοποιημένους παίκτες. Και χαιρόμαστε που μπορέσαμε να σας ευχαριστήσουμε με την τυχαία γεννήτρια μας.

Έχουμε μια ακολουθία αριθμών, που αποτελείται από σχεδόν ανεξάρτητα στοιχεία που υπακούουν σε μια δεδομένη κατανομή. Συνήθως κατανέμεται ομοιόμορφα.

Μπορείτε να δημιουργήσετε τυχαίους αριθμούς στο Excel με διαφορετικούς τρόπους και τρόπους. Ας ρίξουμε μια ματιά στα καλύτερα από αυτά.

Συνάρτηση τυχαίου αριθμού στο Excel

  1. Η συνάρτηση RAND επιστρέφει έναν τυχαίο ομοιόμορφα κατανεμημένο πραγματικό αριθμό. Θα είναι μικρότερο από 1, μεγαλύτερο ή ίσο με 0.
  2. Η συνάρτηση RANDBETWEEN επιστρέφει έναν τυχαίο ακέραιο.

Ας δούμε τη χρήση τους με παραδείγματα.

Επιλογή τυχαίων αριθμών με RAND

Αυτή η συνάρτηση δεν απαιτεί ορίσματα (RAND()).

Για να δημιουργήσετε έναν τυχαίο πραγματικό αριθμό μεταξύ 1 και 5, για παράδειγμα, χρησιμοποιήστε τον ακόλουθο τύπο: =RAND()*(5-1)+1.

Ο επιστρεφόμενος τυχαίος αριθμός κατανέμεται ομοιόμορφα στο διάστημα.

Κάθε φορά που υπολογίζεται το φύλλο εργασίας ή κάθε φορά που αλλάζει η τιμή σε οποιοδήποτε κελί του φύλλου εργασίας, επιστρέφεται ένας νέος τυχαίος αριθμός. Εάν θέλετε να αποθηκεύσετε τον πληθυσμό που δημιουργήθηκε, μπορείτε να αντικαταστήσετε τον τύπο με την τιμή του.

  1. Κάνουμε κλικ σε ένα κελί με τυχαίο αριθμό.
  2. Επισημάνετε τον τύπο στη γραμμή τύπων.
  3. Πατήστε F9. ΚΑΙ ΕΙΣΑΓΕΤΕ.

Ας ελέγξουμε την ομοιομορφία της κατανομής των τυχαίων αριθμών από το πρώτο δείγμα χρησιμοποιώντας το ιστόγραμμα κατανομής.


Το εύρος των κατακόρυφων τιμών είναι η συχνότητα. Οριζόντια - "τσέπες".



Λειτουργία RANDBETWEEN

Η σύνταξη της συνάρτησης RANDBETWEEN είναι (κάτω όριο, άνω όριο). Το πρώτο όρισμα πρέπει να είναι μικρότερο από το δεύτερο. Διαφορετικά, η συνάρτηση θα προκαλέσει σφάλμα. Τα όρια θεωρούνται ακέραιοι. Ο τύπος απορρίπτει το κλασματικό μέρος.

Ένα παράδειγμα χρήσης της συνάρτησης:

Τυχαίοι αριθμοί με ακρίβεια 0,1 και 0,01:

Πώς να φτιάξετε μια γεννήτρια τυχαίων αριθμών στο Excel

Ας φτιάξουμε μια γεννήτρια τυχαίων αριθμών με τη δημιουργία μιας τιμής από μια συγκεκριμένη περιοχή. Χρησιμοποιούμε έναν τύπο όπως: =INDEX(A1:A10;INTEGER(RAND()*10)+1).

Ας φτιάξουμε μια γεννήτρια τυχαίων αριθμών στην περιοχή από 0 έως 100 με βήμα 10.

Από τη λίστα τιμές κειμένουπρέπει να επιλέξετε 2 τυχαία. Χρησιμοποιώντας τη συνάρτηση RAND, συγκρίνουμε τιμές κειμένου στην περιοχή A1:A7 με τυχαίους αριθμούς.

Ας χρησιμοποιήσουμε τη συνάρτηση INDEX για να επιλέξουμε δύο τυχαίες τιμές κειμένου από την αρχική λίστα.

Για να επιλέξετε μία τυχαία τιμή από τη λίστα, εφαρμόστε τον ακόλουθο τύπο: =INDEX(A1:A7,RANDBETWEEN(1,COUNT(A1:A7))).

Γεννήτρια τυχαίων αριθμών κανονικής κατανομής

Οι συναρτήσεις RAND και RANDBETWEEN παράγουν τυχαίους αριθμούς με μία μόνο κατανομή. Οποιαδήποτε τιμή με την ίδια πιθανότητα μπορεί να πέσει στο κατώτερο όριο του ζητούμενου εύρους και στο ανώτερο. Αποδεικνύεται μια τεράστια διαφορά από την τιμή στόχο.

Η κανονική κατανομή σημαίνει ότι οι περισσότεροι από τους αριθμούς που δημιουργούνται είναι κοντά στον στόχο. Ας διορθώσουμε τον τύπο RANDBETWEEN και ας δημιουργήσουμε έναν πίνακα δεδομένων με κανονική κατανομή.

Το κόστος των αγαθών Χ είναι 100 ρούβλια. Ολόκληρη η παρτίδα που παράγεται υπόκειται σε κανονική διανομή. Η τυχαία μεταβλητή ακολουθεί επίσης μια κανονική κατανομή πιθανοτήτων.

Υπό αυτές τις συνθήκες, η μέση τιμή του εύρους είναι 100 ρούβλια. Ας δημιουργήσουμε έναν πίνακα και ας δημιουργήσουμε ένα γράφημα με κανονική κατανομή με τυπική απόκλιση 1,5 ρούβλια.

Χρησιμοποιούμε τη συνάρτηση: =NORMINV(RAND();100;1.5).

Το Excel υπολόγισε ποιες τιμές βρίσκονται στο εύρος των πιθανοτήτων. Δεδομένου ότι η πιθανότητα παραγωγής ενός προϊόντος με κόστος 100 ρούβλια είναι μέγιστη, ο τύπος εμφανίζει τιμές κοντά στο 100 πιο συχνά από τα υπόλοιπα.

Ας περάσουμε στο σχέδιο. Πρώτα πρέπει να δημιουργήσετε έναν πίνακα με κατηγορίες. Για να γίνει αυτό, χωρίζουμε τον πίνακα σε περιόδους:

Με βάση τα δεδομένα που λαμβάνονται, μπορούμε να σχηματίσουμε ένα διάγραμμα με κανονική κατανομή. Ο άξονας τιμής είναι ο αριθμός των μεταβλητών στο διάστημα, ο άξονας της κατηγορίας είναι οι περίοδοι.

Η ηλεκτρονική γεννήτρια αριθμών είναι μια αρκετά απλή και βολική βοηθητική υπηρεσία για τον προσδιορισμό μιας ακολουθίας τυχαίων αριθμών. «Οι αριθμοί κυβερνούν τον κόσμο», είπε κάποτε ο Πυθαγόρας. Ακόμη και στην αρχαιότητα, οι άνθρωποι πίστευαν στη μαγεία των αριθμών. Έτσι, γεννήθηκε η επιστήμη της αριθμολογίας. Οι αριθμοί φέρνουν στους ανθρώπους και χαρές και λύπες.
Έχουμε αναπτύξει μια γεννήτρια τυχαίων αριθμών έτσι ώστε σίγουρα θα κάνει κάθε χρήστη χαρούμενο.

Περιεχόμενο:

Σε τι βασίζεται το πρόγραμμα τυχαίας επιλογής;

Τυχαίο - μεταφράζεται από τα αγγλικά ως "τυχαίο". Πολύ συχνά, κατά μαγική σύμπτωση, οι αθέλητα επιλεγμένοι αριθμοί αποδεικνύονται αριθμός λαχείο, τον αριθμό σας στη λίστα των συμμετεχόντων στο διαγωνισμό.

Πού χρησιμοποιείται η τυχαία επιλογή;

Η αριθμητική τυχαιότητα έχει γίνει ευρέως διαδεδομένη:
στην επιχείρηση λαχειοφόρων αγορών
ανάμεσα στους λάτρεις των καζίνο, ιπποδρόμους, διάφορα αθλητικούς αγώνες
στη διεξαγωγή κοινωνικών αγώνων. δίκτυα

Η διαδικτυακή κλήρωση τυχαίων αριθμών εξασφαλίζει μια δίκαιη επιλογή του νικητή.

Χρησιμοποιώντας την υπηρεσία μας σε λοταρίες, μπορείτε να συμμετάσχετε σε έργα όπως το Gosloto 5 από 36, 7 από 49, Stoloto και άλλα. Οι λάτρεις του καζίνο θα εκτιμήσουν επίσης τη διαδικτυακή μας γεννήτρια.

Δυστυχώς, ο ανθρώπινος εγκέφαλος είναι συχνά σε θέση να αντιγράψει πληροφορίες, μερικές φορές είναι δύσκολο να βρει έναν νέο συνδυασμό. Η γεννήτρια τυχαίων αριθμών θα σας πει πώς να κερδίσετε το πολυπόθητο βραβείο.

Πώς να επιλέξετε μια γεννήτρια αριθμών

Υπάρχουν πολλές παρόμοιες υπηρεσίες που προσφέρονται στο διαδίκτυο, αλλά υπάρχουν 5 λόγοι για να επιλέξετε μια γεννήτρια τυχαίων αριθμών RNG στον ιστότοπο Supergenerators:

  • απλότητα και ευκολία στη χρήση
  • ευρύ φάσμα αριθμών
  • ευκολία της έκδοσης για κινητά
  • δεν υπάρχει συγκεκριμένος σύνδεσμος προς τα κοινωνικά δίκτυα
  • σαφείς οδηγίες, συγκεκριμένη διεπαφή

4 βήματα προς την επιτυχία με τον τυχαιοποιητή μας:

  1. Προσδιορίστε το αριθμητικό εύρος στο οποίο θέλετε να λάβετε ένα δείγμα
  2. Προσδιορίστε τον επιθυμητό αριθμό αριθμών εξόδου
  3. Κάντε κλικ στο κουμπί "Δημιουργία".
  4. Αντιγράψτε την απάντηση που λάβατε και πηδήξτε στο ταβάνι από χαρά!

Με το Super Number Generator, θα υπάρξουν περισσότερες επιτυχημένες στιγμές στη ζωή σας!
Σας ευχαριστούμε που επιλέξατε το δωρεάν μας ηλεκτρονική υπηρεσία.
Πάντα στην ευχάριστη θέση να βοηθήσω εσάς και τους φίλους σας!

Διάφορες κληρώσεις, κληρώσεις κ.λπ. γίνονται συχνά σε πολλές ομάδες ή κοινό στα κοινωνικά δίκτυα, στο Instagram κ.λπ., και χρησιμοποιούνται από τους κατόχους λογαριασμών για να προσελκύσουν ένα νέο κοινό στην κοινότητα.

Το αποτέλεσμα τέτοιων κληρώσεων εξαρτάται συχνά από την τύχη του χρήστη, αφού ο παραλήπτης του δώρου καθορίζεται τυχαία.

Για έναν τέτοιο προσδιορισμό, οι διοργανωτές κληρώσεων χρησιμοποιούν σχεδόν πάντα μια ηλεκτρονική γεννήτρια τυχαίων αριθμών ή μια προεγκατεστημένη που διανέμεται δωρεάν.

Επιλογή

Πολύ συχνά, μπορεί να είναι δύσκολο να επιλέξετε μια τέτοια γεννήτρια, καθώς η λειτουργικότητά τους είναι αρκετά διαφορετική - για κάποιους είναι σημαντικά περιορισμένη, για άλλους είναι αρκετά ευρεία.

Ένας αρκετά μεγάλος αριθμός τέτοιων υπηρεσιών υλοποιείται, αλλά η δυσκολία είναι ότι διαφέρουν ως προς το εύρος τους.

Πολλοί, για παράδειγμα, συνδέονται λόγω της λειτουργικότητάς τους με ένα συγκεκριμένο κοινωνικό δίκτυο(για παράδειγμα, πολλές εφαρμογές γεννήτριας στο VKontakte λειτουργούν μόνο με συνδέσμους από αυτό το κοινωνικό δίκτυο).

Οι απλούστερες γεννήτριες παράγουν απλώς έναν τυχαίο αριθμό μέσα σε ένα δεδομένο εύρος.

Αυτό είναι βολικό γιατί δεν συσχετίζει το αποτέλεσμα με μια συγκεκριμένη ανάρτηση, πράγμα που σημαίνει ότι μπορούν να χρησιμοποιηθούν για κληρώσεις εκτός του κοινωνικού δικτύου και σε διάφορες άλλες καταστάσεις.

Πραγματικά δεν έχουν άλλη χρήση.

<Рис. 1 Генератор>

Συμβουλή!Όταν επιλέγετε την καταλληλότερη γεννήτρια, είναι σημαντικό να λάβετε υπόψη τον σκοπό για τον οποίο θα χρησιμοποιηθεί.

Προδιαγραφές

Για την ταχύτερη διαδικασία επιλογής της βέλτιστης διαδικτυακής υπηρεσίας παραγωγής τυχαίων αριθμών, ο παρακάτω πίνακας δείχνει την κύρια Προδιαγραφέςκαι λειτουργικότητα τέτοιων εφαρμογών.

Πίνακας 1. Χαρακτηριστικά λειτουργίας διαδικτυακές εφαρμογέςγια να δημιουργήσετε έναν τυχαίο αριθμό
Ονομα Κοινωνικό δίκτυο Πολλαπλά αποτελέσματα Επιλέξτε από μια λίστα αριθμών Διαδικτυακό γραφικό στοιχείο για ιστότοπο Επιλέξτε από μια σειρά Απενεργοποιήστε τις επαναλήψεις
περιποιήσεις Ναί Ναί Οχι Ναί Οχι
Ρίχνω κλήρους Επίσημος ιστότοπος ή VKontakte Οχι Οχι Ναί Ναί Ναί
Τυχαίος αριθμός Επίσημη ιστοσελίδα Οχι Οχι Οχι Ναί Ναί
Randomus Επίσημη ιστοσελίδα Ναί Οχι Οχι Ναί Οχι
τυχαίους αριθμούς Επίσημη ιστοσελίδα Ναί Οχι Οχι Οχι Οχι

Όλες οι εφαρμογές που αναφέρονται στον πίνακα περιγράφονται λεπτομερέστερα παρακάτω.

<Рис. 2 Случайные числа>

περιποιήσεις

<Рис. 3 RandStuff>

Μπορείτε να χρησιμοποιήσετε αυτήν την εφαρμογή ηλεκτρονικά χρησιμοποιώντας τον σύνδεσμο στον επίσημο ιστότοπο http://randstuff.ru/number/.

Αυτή είναι μια απλή γεννήτρια τυχαίων αριθμών, χαρακτηρίζεται από γρήγορη και σταθερή λειτουργία.

Υλοποιείται με επιτυχία τόσο με τη μορφή ξεχωριστής ανεξάρτητης εφαρμογής στον επίσημο ιστότοπο όσο και ως εφαρμογή στο κοινωνικό δίκτυο VKontakte.

Η ιδιαιτερότητα αυτής της υπηρεσίας είναι ότι μπορεί να επιλέξει έναν τυχαίο αριθμό τόσο από το καθορισμένο εύρος όσο και από μια συγκεκριμένη λίστα αριθμών που μπορεί να καθοριστεί στον ιστότοπο.

Πλεονεκτήματα:

  • Σταθερή και γρήγορη εργασία.
  • Έλλειψη άμεσης σύνδεσης με το κοινωνικό δίκτυο.
  • Μπορείτε να επιλέξετε έναν ή περισσότερους αριθμούς.
  • Μπορείτε να επιλέξετε μόνο από τους συγκεκριμένους αριθμούς.

Μειονεκτήματα:

  • Η αδυναμία διεξαγωγής κλήρωσης στο VKontakte (αυτό απαιτεί ξεχωριστή εφαρμογή).
  • Οι εφαρμογές για το VKontakte δεν εκτελούνται σε όλα τα προγράμματα περιήγησης.
  • Το αποτέλεσμα μερικές φορές φαίνεται προβλέψιμο, αφού χρησιμοποιείται μόνο ένας αλγόριθμος υπολογισμού.

Οι κριτικές χρηστών σχετικά με αυτήν την εφαρμογή είναι οι εξής: «Καθορίζουμε τους νικητές στις ομάδες VKontakte μέσω αυτής της υπηρεσίας. Ευχαριστώ», «Είσαι ο καλύτερος», «Χρησιμοποιώ μόνο αυτήν την υπηρεσία».

Ρίχνω κλήρους

<Рис. 4 Cast Lots>

Αυτή η εφαρμογή είναι μια απλή γεννήτρια λειτουργιών, που υλοποιείται στον επίσημο ιστότοπο, με τη μορφή εφαρμογής VKontakte.

Υπάρχει επίσης ένα γραφικό στοιχείο γεννήτριας για ενσωμάτωση στον ιστότοπό σας.

Η κύρια διαφορά από την προηγούμενη περιγραφείσα εφαρμογή είναι ότι αυτό σας επιτρέπει να απενεργοποιήσετε την επανάληψη του αποτελέσματος.

Δηλαδή, όταν διεξάγετε πολλές γενιές στη σειρά σε μία συνεδρία, ο αριθμός δεν θα επαναληφθεί.

  • Η παρουσία ενός γραφικού στοιχείου για εισαγωγή σε ιστότοπο ή ιστολόγιο.
  • Δυνατότητα απενεργοποίησης της επανάληψης του αποτελέσματος.
  • Η παρουσία της συνάρτησης «ακόμα πιο τυχαία», μετά την ενεργοποίηση της οποίας αλλάζει ο αλγόριθμος επιλογής.

Αρνητικός:

  • Η αδυναμία προσδιορισμού πολλών αποτελεσμάτων ταυτόχρονα.
  • Αδυναμία επιλογής από μια συγκεκριμένη λίστα αριθμών.
  • Για να επιλέξετε έναν νικητή δημόσια, πρέπει να χρησιμοποιήσετε ένα ξεχωριστό γραφικό στοιχείο VKontakte.

Οι κριτικές χρηστών είναι οι εξής: "Λειτουργεί σταθερά, είναι αρκετά βολικό στη χρήση", "Βολική λειτουργικότητα", "Χρησιμοποιώ μόνο αυτήν την υπηρεσία".

Τυχαίος αριθμός

<Рис. 5 Случайное число>

Αυτή η υπηρεσία βρίσκεται στη διεύθυνση http://random number.rf/.

Μια απλή γεννήτρια με ελάχιστες λειτουργίες και πρόσθετα χαρακτηριστικά.

Μπορεί να δημιουργήσει τυχαία αριθμούς εντός ενός δεδομένου εύρους (μέγιστο από 1 έως 99999).

Ο ιστότοπος δεν έχει γραφικό σχέδιο και επομένως η φόρτωση της σελίδας είναι εύκολη.

Το αποτέλεσμα μπορεί να αντιγραφεί ή να ληφθεί με το πάτημα ενός κουμπιού.

Αρνητικός:

  • Δεν υπάρχει widget για το VKontakte.
  • Δεν υπάρχει δυνατότητα διεξαγωγής κληρώσεων.
  • Δεν υπάρχει τρόπος να εισαγάγετε το αποτέλεσμα σε ένα blog ή ιστότοπο.

Δείτε τι λένε οι χρήστες αυτή η υπηρεσία: "Καλή γεννήτρια, αλλά όχι αρκετές λειτουργίες", "Πολύ λίγες δυνατότητες", "Κατάλληλο για γρήγορη δημιουργία αριθμού χωρίς περιττές ρυθμίσεις."

Randomus

<Рис. 6 Рандомус>

Μπορείτε να χρησιμοποιήσετε αυτήν τη γεννήτρια τυχαίων αριθμών στη διεύθυνση http://randomus.ru/.

Άλλο ένα απλό, αλλά λειτουργική γεννήτρια τυχαίων αριθμών.

Η υπηρεσία έχει επαρκή λειτουργικότητα για τον προσδιορισμό τυχαίων αριθμών, ωστόσο, δεν είναι κατάλληλη για κληρώσεις και άλλες πιο περίπλοκες διαδικασίες.

Αρνητικός:

  • Η αδυναμία διεξαγωγής κληρώσεων με βάση αναδημοσιεύσεις αναρτήσεων κ.λπ.
  • Δεν υπάρχει εφαρμογή για VKontakte ή γραφικό στοιχείο για τον ιστότοπο.
  • Δεν είναι δυνατό να απενεργοποιήσετε την επανάληψη των αποτελεσμάτων.

Έχετε αναρωτηθεί ποτέ πώς λειτουργεί το Math.random(); Τι είναι ένας τυχαίος αριθμός και πώς προκύπτει; Και φανταστείτε μια ερώτηση σε μια συνέντευξη - γράψτε τη γεννήτρια τυχαίων αριθμών σε μερικές γραμμές κώδικα. Και λοιπόν, τι είναι αυτό, ατύχημα και είναι δυνατόν να το προβλέψουμε;

Είμαι πολύ γοητευμένος από διάφορα παζλ και παζλ πληροφορικής και η γεννήτρια τυχαίων αριθμών είναι ένα από αυτά τα παζλ. Συνήθως στο κανάλι μου στο τηλεγράφημα ξεχωρίζω κάθε λογής παζλ και διάφορες εργασίες από συνεντεύξεις. Το πρόβλημα σχετικά με τη γεννήτρια τυχαίων αριθμών έχει αποκτήσει μεγάλη δημοτικότητα και ήθελα να το διαιωνίσω στα βάθη μιας από τις έγκυρες πηγές πληροφοριών - δηλαδή εδώ στο Habré.

Αυτό το υλικό θα είναι χρήσιμο σε όλους εκείνους τους προγραμματιστές front-end και τους προγραμματιστές του Node.js που βρίσκονται στην πρώτη γραμμή της τεχνολογίας και θέλουν να μπουν στο έργο / startup του blockchain, όπου υπάρχουν ερωτήσεις σχετικά με την ασφάλεια και την κρυπτογραφία, τουλάχιστον βασικό επίπεδο, ζητούνται ακόμη και προγραμματιστές front-end.

Γεννήτρια ψευδοτυχαίων αριθμών και γεννήτρια τυχαίων αριθμών

Για να πάρουμε κάτι τυχαίο, χρειαζόμαστε μια πηγή εντροπίας, μια πηγή κάποιου είδους χάους από το οποίο θα χρησιμοποιήσουμε για να δημιουργήσουμε τυχαιότητα.

Αυτή η πηγή χρησιμοποιείται για τη συσσώρευση της εντροπίας και στη συνέχεια τη λήψη από αυτήν την αρχική τιμή (αρχική τιμή, σπόρος), η οποία είναι απαραίτητη για τις γεννήτριες τυχαίων αριθμών (RNG) για τη δημιουργία τυχαίων αριθμών.

Η Γεννήτρια Ψευδοτυχαίων Αριθμών χρησιμοποιεί μια μοναδική τιμή σπόρων, εξ ου και η ψευδοτυχαία της, ενώ η Γεννήτρια Τυχαίων Αριθμών δημιουργεί πάντα έναν τυχαίο αριθμό, ξεκινώντας με μια τυχαία τιμή υψηλής ποιότητας που λαμβάνεται από διάφορες πηγές εντροπίας.

Η εντροπία - είναι ένα μέτρο της αταξίας. Η εντροπία πληροφοριών είναι ένα μέτρο της αβεβαιότητας ή της μη προβλεψιμότητας των πληροφοριών.
Αποδεικνύεται ότι για να δημιουργήσουμε μια ψευδοτυχαία ακολουθία, χρειαζόμαστε έναν αλγόριθμο που θα δημιουργήσει κάποια ακολουθία με βάση έναν συγκεκριμένο τύπο. Αλλά μια τέτοια ακολουθία μπορεί να προβλεφθεί. Ωστόσο, ας φανταστούμε πώς θα μπορούσαμε να γράψουμε τη δική μας γεννήτρια τυχαίων αριθμών αν δεν είχαμε το Math.random()

Το PRNG έχει κάποιο αλγόριθμο που μπορεί να αναπαραχθεί.
Το RNG - είναι να λαμβάνει αριθμούς εντελώς από οποιονδήποτε θόρυβο, η δυνατότητα υπολογισμού που τείνει στο μηδέν. Ταυτόχρονα, το RNG έχει ορισμένους αλγόριθμους για την ισοπέδωση της κατανομής.

Εφευρίσκοντας τον δικό μας αλγόριθμο PRNG

Η γεννήτρια ψευδοτυχαίων αριθμών (PRNG) είναι ένας αλγόριθμος που δημιουργεί μια ακολουθία αριθμών των οποίων τα στοιχεία είναι σχεδόν ανεξάρτητα μεταξύ τους και υπακούουν σε μια δεδομένη κατανομή (συνήθως ομοιόμορφη).
Μπορούμε να πάρουμε μια ακολουθία ορισμένων αριθμών και να πάρουμε το μέτρο του αριθμού από αυτούς. Το πιο απλό παράδειγμα που μου έρχεται στο μυαλό. Πρέπει να σκεφτούμε ποια σειρά θα πάρουμε και την ενότητα από τι. Εάν απλώς από το 0 στο N και την ενότητα 2, τότε θα έχετε μια γεννήτρια του 1 και του 0:

Συνάρτηση* rand() ( const n = 100; const mod = 2; έστω i = 0; ενώ (true) (απόδοση i % mod; εάν (i++ > n) i = 0; ) ) έστω i = 0; for (έστω x της rand()) (αν (i++ > 100) σπάσει; console.log(x); )
Αυτή η συνάρτηση δημιουργεί για εμάς την ακολουθία 01010101010101 ... και δεν μπορεί να ονομαστεί καν ψευδοτυχαία. Για να είναι μια γεννήτρια τυχαία, πρέπει να περάσει τη δοκιμή για το επόμενο bit. Δεν έχουμε όμως τέτοιο καθήκον. Παρόλα αυτά, ακόμα και χωρίς κανένα τεστ, μπορούμε να προβλέψουμε την επόμενη ακολουθία, πράγμα που σημαίνει ότι ένας τέτοιος αλγόριθμος δεν είναι κατάλληλος στο μέτωπο, αλλά είμαστε στη σωστή κατεύθυνση.

Τι γίνεται όμως αν πάρουμε κάποια γνωστή, αλλά μη γραμμική ακολουθία, για παράδειγμα, τον αριθμό PI. Και ως τιμή για την ενότητα, θα πάρουμε όχι 2, αλλά κάτι άλλο. Μπορείτε ακόμη και να σκεφτείτε την αλλαγή της αξίας της μονάδας. Η ακολουθία των ψηφίων στο Pi θεωρείται τυχαία. Η γεννήτρια μπορεί να λειτουργήσει χρησιμοποιώντας pi ξεκινώντας από κάποιο άγνωστο σημείο. Ένα παράδειγμα ενός τέτοιου αλγορίθμου, με μια ακολουθία βασισμένη σε PI και αλλαγή modulo:

Const vector = [...Math.PI.toFixed(48).replace(".","")]; συνάρτηση* rand() ( for (έστω i=3; i<1000; i++) { if (i >99) i = 2; για (έστω n=0; n Αλλά στο JS, ο αριθμός PI μπορεί να εμφανιστεί μόνο έως 48 χαρακτήρες και όχι περισσότερους. Επομένως, εξακολουθεί να είναι εύκολο να προβλεφθεί μια τέτοια ακολουθία και κάθε εκτέλεση μιας τέτοιας γεννήτριας θα παράγει πάντα τους ίδιους αριθμούς. Αλλά η γεννήτρια μας έχει ήδη αρχίσει να δείχνει αριθμούς από το 0 έως το 9.

Πήραμε μια γεννήτρια αριθμών από το 0 έως το 9, αλλά η κατανομή είναι πολύ άνιση και θα δημιουργεί την ίδια ακολουθία κάθε φορά.

Μπορούμε να πάρουμε όχι τον αριθμό Pi, αλλά τον χρόνο σε αριθμητική αναπαράσταση και να θεωρήσουμε αυτόν τον αριθμό ως μια ακολουθία ψηφίων και για να αποτρέψουμε την επανάληψη της ακολουθίας κάθε φορά, θα τη διαβάζουμε από το τέλος. Συνολικά, ο αλγόριθμός μας για το PRNG μας θα μοιάζει με αυτό:

Συνάρτηση* rand() (έστω newNumVector = () => [...(+new Date)+""].reverse(); let vector = newNumVector(); έστω i=2; while (true) ( αν ( i++ > 99) i = 2, έστω n=-1, ενώ (++n< vector.length) yield (vector[n] % i); vector = newNumVector(); } } // TEST: let i = 0; for (let x of rand()) { if (i++ >100) διάλειμμα; console.log(x) )
Τώρα μοιάζει με μια γεννήτρια ψευδοτυχαίων αριθμών. Και το ίδιο Math.random() - είναι PRNG, θα το συζητήσουμε λίγο αργότερα. Επιπλέον, κάθε φορά ο πρώτος αριθμός είναι διαφορετικός.

Βασικά σε αυτά απλά παραδείγματαμπορείτε να καταλάβετε πώς λειτουργούν πιο πολύπλοκες γεννήτριες τυχαίων αριθμών.Και υπάρχουν ακόμη και έτοιμοι αλγόριθμοι. Για παράδειγμα, ας αναλύσουμε ένα από αυτά - αυτό είναι το Linear Congruent PRNG (LCPRNG).

Γραμμικό σύμφωνο PRNG

Το Linear Congruential PRNG (LCPRNG) -  είναι μια κοινή μέθοδος για τη δημιουργία ψευδοτυχαίων αριθμών. Δεν έχει κρυπτογραφική ισχύ. Αυτή η μέθοδος συνίσταται στον υπολογισμό των όρων μιας γραμμικής επαναλαμβανόμενης ακολουθίας modulo κάποιου φυσικού αριθμού m που δίνεται από έναν τύπο. Η ακολουθία που προκύπτει εξαρτάται από την επιλογή του αρχικού αριθμού - δηλ. σπόρος. Στο διαφορετικές έννοιεςΟ σπόρος δίνει διαφορετικές ακολουθίες τυχαίων αριθμών. Ένα παράδειγμα εφαρμογής ενός τέτοιου αλγορίθμου σε JavaScript:

Const a = 45; const c = 21; const m = 67; varseed = 2; const rand = () => seed = (a * seed + c) % m; for(έστω i=0; i<30; i++) console.log(rand())
Πολλές γλώσσες προγραμματισμού χρησιμοποιούν LCPRNG (αλλά όχι μόνο έναν τέτοιο αλγόριθμο (!).

Όπως αναφέρθηκε παραπάνω, μια τέτοια ακολουθία μπορεί να προβλεφθεί. Γιατί λοιπόν χρειαζόμαστε το PRNG; Αν μιλάμε για ασφάλεια, τότε το PRNG είναι πρόβλημα. Αν μιλάμε για άλλες εργασίες, τότε αυτές οι ιδιότητες  -  μπορούν να παίξουν ένα συν. Για παράδειγμα, για διάφορα ειδικά εφέ και κινούμενα σχέδια γραφικών, μπορεί να χρειαστεί να καλείτε συχνά τυχαία. Και εδώ η κατανομή των αξιών και η απόδοση είναι σημαντικές! Οι αλγόριθμοι ασφαλείας δεν μπορούν να καυχηθούν για ταχύτητα.

Μια άλλη ιδιότητα - αναπαραγωγιμότητα. Ορισμένες υλοποιήσεις σάς επιτρέπουν να καθορίσετε έναν σπόρο, κάτι που είναι πολύ χρήσιμο εάν πρόκειται να επαναληφθεί μια ακολουθία. Η αναπαραγωγή είναι απαραίτητη σε δοκιμές, για παράδειγμα. Και υπάρχουν πολλά άλλα πράγματα που δεν απαιτούν ασφαλές RNG.

Πώς λειτουργεί το Math.random().

Η μέθοδος Math.random() επιστρέφει έναν ψευδοτυχαίο αριθμό κινητής υποδιαστολής από το εύρος = crypto.getRandomValues(new Uint8Array(1)); αρχείο καταγραφής κονσόλας (rvalue)
Όμως, σε αντίθεση με το PRNG Math.random(), αυτή η μέθοδος απαιτεί πολύ πόρους. Το γεγονός είναι ότι αυτή η γεννήτρια χρησιμοποιεί κλήσεις συστήματος στο λειτουργικό σύστημα για πρόσβαση σε πηγές εντροπίας (διεύθυνση παπαρούνας, cpu, θερμοκρασία, κ.λπ. ...).


Μπλουζα