Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import "dart:core";
- Stream<Map<int, int>> getRandomNumbers(int seed, int modulus, int increment, int multiplier, int max) async* {
- int prevxn = seed;
- int result = 0;
- for(int i = 1; i <= max; i++)
- {
- result = (multiplier*prevxn + increment) % modulus;
- yield {i : result};
- prevxn = result;
- }
- }
- void main() {
- int seed = 7;
- int modulus = 16;
- int increment = 3;
- int multiplier = 5;
- int maximum = 32;
- print("Calculating pseudorandom numbers:");
- print("x0: $seed, modulus:$modulus, step:$increment, multiplier:$multiplier, iteration count:$maximum");
- /* Print */
- getRandomNumbers(seed, modulus, increment, multiplier, maximum).listen((values) => print("x${values.keys.first} = ${values.values.first}"));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement