Question
It has to be solved using. scheme programming language and tested on Dr.Racket a.[2 marks] Create a procedure (list->stream lis) that makes a stream from
It has to be solved using. scheme programming language and tested on Dr.Racket
a.[2 marks] Create a procedure (list->stream lis) that makes a stream from a given list.
b.[3 marks] Create a procedure (stream->list strm n) that makes a list from the first n items of the given stream.
c.[2 marks] Create a stream factorials that refers to the infinite stream of consecutive factorial values starting from 0! E.g. (stream->list factorials 10) (1 1 2 6 24 120 720 5040 40320 362880)
d.[4 marks] A pseudo-random number generator (prng) can be defined using the following equation: Xn+1 = (a*Xn + c) mod m where m is the "modulus" (0list (prng 3) 5) (0.01585 0.4954 0.9988 0.7253 0.0307) Use the following values for the prng constants: m = 232 a = 22695477 c = 1.0 Note: the equation above returns numbers in the range [0,m-1], you should ensure that your stream emits only numbers in the range [0,1)
[3 marks] Create a procedure (random-int r min max) that takes a stream of random numbers r in the range [0,1) and returns a stream of random integers in the range [min,max). E.g., (stream->list (random-int (prng 3) 10 20) 5) (10 14 19 17 10)
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started