Προς το περιεχόμενο

random char απο συγκεκριμενο charset


Anubis13

Προτεινόμενες αναρτήσεις

Δημοσ.

Θελω μεσα απο ενα συγκεκριμένο charset να διαλεγω τυχαία char. Βρήκα διάφορα αλλά τίποτα συγκεκριμένο που να με βοηθάει. Καλύτερο implementation είναι πιο?

 

static char charset[]="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

 

 

η

 

char *letters = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";

int num_of_letters = strlen(letters);

int n = rand() % num_of_letters;

 

printf("%c\n", letters[n]);

 

Επίσης αν έχω διαβάσει καλά η τυχαιότητα του rand() εξαρτάται από διάφορους παράγοντες, εγώ που θέλω το συγκεκριμένο string να είναι όσο πιο τυχαίο γίνεται τι κάνω?

 

Και αν θέλω να πάρω την θέση του χαρακτήρα πχ το Α στο δεύτερο implementation βρίσκεται στην θέση 1 τι κάνω?

Δημοσ.

Οι random procedures συνήθως αρχικοποιούνται μαζί με το σύστημα γι' αυτό και λέγονται ψευδοτυχαίες και φυσικά αλλάζουν κάθε φορά που κάνεις restart. Νομίζω πρέπει να χρησιμοποιείς το srandγια να αναδημιουργείς τον πίνακα των random αριθμών. Δεν ξέρω κάτι πιο εξειδικευμένο πάνω στο θέμα...

Δημοσ.

Ναι το γνωριζω πως ειναι ψευδοτυχαιες..Αρχικα θα ηθελα να μαθω ποιος είναι ο καλύτερος τρόπος να ορίσω το charset μου απο τους 2 και μετα για την τυχαιοτητα.

 

Επίσης δεν ξέρω πς μπορω να παρω την θέση του generated char απο το charset

Αρχειοθετημένο

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

  • Δημιουργία νέου...