GENERATEUR DE BITS ALÉATOIRES

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014 - 15 juin 2007 à 13:54
ciddiju Messages postés 2 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 26 septembre 2010 - 26 sept. 2010 à 15:06
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/43126-generateur-de-bits-aleatoires

ciddiju Messages postés 2 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 26 septembre 2010
26 sept. 2010 à 15:06
int aleatoire()
{
static int pos=BUFSIZE-1;
int dif;

pos++;

if(pos==BUFSIZE)
{
waveInAddBuffer(wavein,&headerIn,sizeof(headerIn));
pos=1;
}

dif= buffer[pos-1]*2 - buffer[pos] - buffer[pos-2];
return dif>0;
}

j'ai l'impression que sa marche mieux
ciddiju Messages postés 2 Date d'inscription mercredi 17 septembre 2008 Statut Membre Dernière intervention 26 septembre 2010
26 sept. 2010 à 14:46
Salut

Code super intéressant merci.
Par contre a quoi sert le while (!fini);
avec fini=0;
c'est pour faire chier les noob :) ?

PS différence entre aléatoire et pseudo-aléatoire
il m'était arrivé en utilisant rand () pour des simulations du jeux de la roullette, (en utilisant la soi disant maniere infaillible de gagner lol ), d'obtenir les meme resultats quelque soit la graine...

ensuite en utilisant une autre maniere de generer les nombres les résultats varié...
un truc du genre :

float rand2 ()
{
static float graine=npk;
return (graine = 1/graine - graine/2)>0; // c'est pourri je sais...
}
itadakimace Messages postés 1 Date d'inscription mardi 23 février 2010 Statut Membre Dernière intervention 23 février 2010
23 févr. 2010 à 13:50
salut
je cherche un generateur de son aleatoire de bruit electronique
suis je bien tombe?
ce site a l air tres specialiser
j ai besoin de ce logiciel pour un travail musical dans l esprit de david dunne ou xenakis pour ceux qui connaissent
dans cette ordre d idee existe il des logiciels capable d extraire une suite de bits de n importe quel support et de l interpreter en image ou son
ex:la suite de bits encodant une photo traduit en son et inversement
merci
cs_pasty Messages postés 11 Date d'inscription lundi 2 février 2004 Statut Membre Dernière intervention 11 juillet 2009
27 déc. 2008 à 10:47
Le bruit enregistré sur la carte son n'est pas un bruit de Johnson parfait, ce qui peut expliquer le déséquilibre de 1 et de 0. Sur ma carte sound blaster et avec l'entrée micro, sur 20 tirages de 10000 bits, il y a 7 tirages avec une dominance de 0 et 13 avec une dominance de 1.
SnOOpss Messages postés 571 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 5 décembre 2013
23 déc. 2008 à 16:22
J'ai testé ton code, et il est loin d'etre aleatoire, il y a une dominance de bit a 1 sur ceux a 0 a chacun de mes tests.
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
15 juin 2007 à 15:19
ouais environ, mais quand tu veux ajuster ton fusil pour qu'il soit sécuritaire il te faut un chronograph. Un chronograph c'est 160$ si je peux mesurer la vitesse en tirant une balle sur un objet situé à 5 pieds environ en mesurant la distance entre les 2 pics de sons (tir et obstacle) il est possible de déduire la vitesse. Donc au lieu de payer un bras et une jambe pour un chronograph tu prends un micro et c'est réglé. Sa sert également a mesurer la précision de la vitesse selon les réglages. Sachant qu'il faut se tenir aux environs de 300 pieds/sec (324 km/h environ).
Neo_Fr Messages postés 653 Date d'inscription mardi 6 décembre 2005 Statut Membre Dernière intervention 10 novembre 2014 2
15 juin 2007 à 15:01
La vitesse d'une bille de paintball c'est environ 300km/h...
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
15 juin 2007 à 14:33
Je me disais surtout que même s'il est pseudo aléatoire le rand() sort quand même des bons résultats en le combinant a time() et je me questionnais sur l'idée de faire tout ça pour obtenir le chiffre. Mais je ne discrédite pas cette idée qui est vraiment excellente. Il faudrait maintenant en faire une version Java, qui avec sa fonction avait la facheuse tendance a sortir 5 fois de suite le même chiffre sur une possibilité de 10 lol (Mon jeu de tetris en applet JAVA en prenait un coup).

Sur ce, bonne prog A+
cs_pasty Messages postés 11 Date d'inscription lundi 2 février 2004 Statut Membre Dernière intervention 11 juillet 2009
15 juin 2007 à 14:11
La fonction rand() est complètement différente, elle génère des nombres pseudo aléatoire: c'est à dire que l'on initialise avec srand, puis chaque appel de rand calcule un nouveau nombre de manière déterministe. Au contraire mon code utilise le bruit éléctronique pour générer des bits.
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
15 juin 2007 à 13:54
C'est pas fou du tout loin de la, mais a quoi sa peut servir par rapport au rand()? C'est un peu lourd comme méthode. A moins que ce soit moi qui n'est pas bien saisi quelque chose.

Enfin, le code pour extraire les données de la carte de son n'en ait pas moins intéressant car simple comme tout à comprendre et efficace.

Pendant qu'on parle de microphone mon idée était de m'en servir pour mesurer la vitesse d'une balle de paintball grâce a son taux d'échantillionnage élevé :D (Je dis sa, car si quelqu'un est au courant que sa deja été fait j'aimerais qu'il me le dise :P)

A+
Rejoignez-nous