mirror of
https://github.com/appinfosapienza/so-un-bot.git
synced 2025-03-14 13:06:14 +01:00
21 lines
409 B
Text
21 lines
409 B
Text
|
<pre>
|
||
|
block MarkovChain
|
||
|
//external function myrandom() returns a random real number in [0, 1]
|
||
|
parameter Real x0 = 0;
|
||
|
OutputReal x;
|
||
|
Integer countdown;
|
||
|
algorithm
|
||
|
when initial() then
|
||
|
x := x0;
|
||
|
countdown := 0;
|
||
|
elsewhen sample(0, 1) then
|
||
|
if (countdown <= 0)
|
||
|
then
|
||
|
countdown := 1 + integer(floor(10*myrandom()));
|
||
|
x := x + (-1 + 4*myrandom());
|
||
|
else
|
||
|
countdown := countdown - 1;
|
||
|
end if;
|
||
|
end when;
|
||
|
end MarkovChain;
|
||
|
</pre>
|