OBSAH WEBU
ČTĚTE!
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
temata:25-principy_modelovani_a_simulace_systemu:pseudokody [2011/03/16 10:12] jasho [Generátor náhodných čísel] |
temata:25-principy_modelovani_a_simulace_systemu:pseudokody [2011/06/14 22:21] (aktuální) vagabund [25a - Pseudokódy] |
||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
- | ====== Pseudokódy ====== | + | ~~ODT~~ |
+ | ====== 25a - Pseudokódy ====== | ||
===== Kalendár udalostí ===== | ===== Kalendár udalostí ===== | ||
Řádek 18: | Řádek 19: | ||
===== Generátor náhodných čísel ===== | ===== Generátor náhodných čísel ===== | ||
zadanie: | zadanie: | ||
- | ''Napíšte funkciu double Uniform(double od, double do) - vlastný kód kongruentného generátora | + | |
+ | Napíšte funkciu double Uniform(double od, double do) - vlastný kód kongruentného generátora | ||
Napíšte funkciu double random_gen() - vylučovacia metóda, generuje číslo s rozložením: | Napíšte funkciu double random_gen() - vylučovacia metóda, generuje číslo s rozložením: | ||
f(x) = -x pre interval x ∈ <-1; 0) | f(x) = -x pre interval x ∈ <-1; 0) | ||
f(x) = x pre interval x ∈ <0; 1> | f(x) = x pre interval x ∈ <0; 1> | ||
- | '' | + | |
+ | <code c> | ||
+ | long int ix = seed; | ||
+ | double Uniform(double od, double do) | ||
+ | { | ||
+ | ix = (ix*A+B)%M; | ||
+ | return (ix/(M-1)*(do-od)+od); | ||
+ | } | ||
+ | |||
+ | double random_gen() | ||
+ | { | ||
+ | double x, y; | ||
+ | while(1) | ||
+ | { | ||
+ | x = Uniform(-1, 1); | ||
+ | y = Uniform(0, 1); | ||
+ | if(((x < 0) && (y <= -x)) || ((x >= 0) && (y <= x)) | ||
+ | return x; | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ===== SIMLIB ===== | ||
+ | |||
+ | <note tip> | ||
+ | **Na [[http://www.stud.fit.vutbr.cz/~xkalab00/ims:simlib|Pitlově wiki]] je vše** | ||
+ | </note> | ||
+ | |||
+ | {{tag>jasho IMS simlib pseudokod}} | ||
+ | |||
+ | ~~DISCUSSION~~ |