Bonjour,
je suis �tudiant en 2�me ann�e de sciences physiques.
Au dernier cours on a parl� de distribution gaussienne, pour moi ca �tait trop vite et je n'ai pas su comprendre le programme qu'on a �crit....
Voici le programme.
En un premier temps, si je comprends bien, on d�finit uniform, qui prend des nombres al�atoires et qui les distribue de mani�re uniforme. Par contre pour le expo j'ai vraiment du mal � voir ce qui se passe....
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 #include <iostream> #include <cstdlib> #include <cmath> using namespace std; double uniform (float a, float b) { return a+(float) rand()/RAND_MAX*fabs(b-a); } double expo (double a) { double x = uniform(0,1); double R; while (x==1) { x = uniform(0,1); } R = -a*log(1-x); return R; } int main () { int N = 50; srand (15); for (int i = 0; i<N; i++) { cout << rand () << endl; } return 0; }
Merci d'avance pour votre aide !
Partager