Page 44

random()

Η συνάρτηση random() παράγει ψευδο-τυχαίους αριθμούς. Η σύνταξη της συνάρτησης είναι: random(max)

random(min, max)

όπου, max είναι το ανώτερο όριο της τυχαίας τιμής που παράγεται (υποχρεωτική τιμή) και min η μικρότερη τιμή της παραγόμενης τυχαίας τιμής (προαιρετική). Επιστρέφει έναν τυχαίο αριθμό μεταξύ min και max-1 (τύπου δεδομένων long).

Σημείωση

Εάν είναι σημαντικό για μια σειρά τιμών που δημιουργούνται από την random() να διαφέρουν μεταξύ τους στις επόμενες εκτελέσεις του προγράμματος, χρησιμοποιήστε την randomSeed() για να προετοιμάσει τη γεννήτρια τυχαίων αριθμών με ένα αρκετά τυχαίο τρόπο, όπως η analogRead () σε κάποια μη συνδεδεμένη ακίδα.

Αντιστρόφως, μπορεί περιστασιακά να είναι χρήσιμο να χρησιμοποιηθούν ψευδο-τυχαίες ακολουθίες αριθμών που επαναλαμβάνονται με ακρίβεια. Αυτό μπορεί να επιτευχθεί με την κλήση της randomSeed(), με παράμετρο ένα σταθερό αριθμό, πριν από την έναρξη της λήψης τυχαίας αλληλουχίας αριθμών. Παράδειγμα long randNumber;

void setup(){ Serial.begin(9600); // αν η αναλογική ακίδα 0 δεν είναι συνδεμένη, ο τυχαίος // θόρυβος της αναλογικής εισόδου είναι ο λόγος που η // κλήση της randomSeed() θα αναπαράγει διαφορετικές // ακολουθίες τιμών κάθε φορά που εκτελείται εκ νέου το // πρόγραμμα. randomSeed(analogRead(0)); } void loop() { // εκτύπωση ενός τυχαίου αριθμού στο διάστημα 0 έως 299 randNumber = random(300); Serial.println(randNumber);

}

// εκτύπωση ενός τυχαίου αριθμού στο διάστημα 10 έως 19 randNumber = random(10, 20); Serial.println(randNumber); delay(50);

50

Σημειώσεις arduino kales  
Σημειώσεις arduino kales  
Advertisement