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

Random Numbers σε C


derasto

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

Δημοσ.

Μεσω μια γεννητριας τυχαιων αριθμων δημιουργω καποιους ενος συγκεκριμενου ευρους.Κανενα tutorial, ωστε η γεννητρια να παραγει αριθμους αλλα ακολουθωντας ομοιομορφη κατανομη;

 

Thanks.

Edit

Αpο βιασυνη δεν ειπα οτι γραφω σε C και απο οτι καταλαβα γινετε μεσω της RAND_MAX ε;

Δημοσ.

Μεσω μια γεννητριας τυχαιων αριθμων δημιουργω καποιους ενος συγκεκριμενου ευρους.Κανενα tutorial, ωστε η γεννητρια να παραγει αριθμους αλλα ακολουθωντας ομοιομορφη κατανομη;

 

Thanks.

Edit

Αpο βιασυνη δεν ειπα οτι γραφω σε C και απο οτι καταλαβα γινετε μεσω της RAND_MAX ε;

 

>int main(int a,char **c)
{
srand(
	(int)main
	/
	(int)c
	);
double d = 0.01;
for(;d <3.61;d+=0.01)
{
	printf("%d\n", 
		rand() % 25
		+
		(int) ((cos(d)*100) )
		);
}

return 0;}

Δημοσ.

πιο απλα

 

>#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main ()
{
 int iSecret;

 /* initialize random seed: */
 srand ( time(NULL) );

 /* generate secret number: from 1-10*/
 iSecret = rand() % 10 + 1;

}

Δημοσ.

πιο απλα

 

>#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main ()
{
 int iSecret;

 /* initialize random seed: */
 srand ( time(NULL) );

 /* generate secret number: from 1-10*/
 iSecret = rand() % 10 + 1;

}

Thanks κατι παρομοιο ειχα φτιαξει.

Δημοσ.

Η rand() και οι όμοιές της που παράγουν τυχαίους αριθμούς είναι συναρτήσεις πυκνότητας πιθανότητας ομοιόμορφης κατανομής.

Για οποιαδήποτε άλλη πρέπει να τους φτιάξεις εσύ από την ομοιόμορφη.

Ο τρόπος περιγράφεται στην Στατιστική.

 

Στις απλές περιπτώσεις αντιστρέφεται η συνάρτηση πυκνότητας πιθανότητας p(x) και προσδιορίζεται το

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

 

Όταν ο τύπος είναι πολύπλοκος και η αντιστροφή του δεν είναι εύκολη χρησιμοποιείται η τεχνική απόρριψης.

Η τεχνική αυτή βασίζεται επίσης στην ομοιόμορφη κατανομή αλλά δεν απαιτεί τον υπολογισμό της p(x), ούτε την αντιστροφή της.

 

Από εδώ που είμαι τώρα δεν μπορώ να γράψω περισσότερα....

 

-

Δημοσ.

Kατι αλλο.Σε κανονικη κατανομη πως παει ο κωδικας;

 

Υπάρχουν αρκετοί τρόποι ειδικά για την κανονική, δύο έρχονται στο νου μου :

 

1) απο το κεντρικό οριακό θεώρημα που λίγο πολύ λέει οτι αν προσθέσεις πολλές κατανομές οποιασδήποτε κατανομής θα είναι κανονική μετά και όσο πιο πολλές προσθέσεις τόσο περισσότερο θα θυμίζει σε κανονική.

2) ο άλλος τρόπος που θα σου συνιστούσα κιόλας είναι μέσω του Box - Muller transform

Δημοσ.

Οκ, νομιζω το εφτιαξα.Κατι αλλο τωρα,μεσω μιας rand() η οποια υπαρχει σε μια μοναδικη srand() θετω το τελος του for loop ισο με μια rand().Τρεχει σωστα(υποθετω δηλαδη).Πως σας ακουγεται αυτο;

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

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

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