题目描述
用线性同余法生成随机数序列的公式为:
r_k = (multiplier * r_k-1 + increment) % modulus
序列中的每个数r_k都可以由它的前一个数r_k-1计算出来。例如,如果有:
r_k = (25173 * r_k-1 + 13849) % 65536
则可以产生65 536个各不相同的整型随机数。设计一个函数作为随机数生成器,生成1位或2位的随机数。
利用这个随机数生成器,编写一个小学生学习四则运算的练习程序,要求:
① 可以进行难度选择,一级难度只用1位数,二级难度用2位数;
② 可以选择运算类型,包括加、减、乘、除等;
③ 给出错误提示;
④ 可以统计成绩。
输入
根据程序提示给出回应/答案
输出
相关提示和结果(每个提后和结果后面需要endl)
样例输入
Y 8 1 k + 5 12 12 10 1 5 12 12 15 0
样例输出
Start now? (Y or N)
Please enter difficulty (1 or 2):
Input error, please re-enter!
Please enter difficulty (1 or 2):
Please enter the type of operation (+, -, *, /):
Input error, please re-enter!
Please enter the type of operation (+, -, *, /):
2+3=
You're right, get 10 points.
8+4=
You're right, get 10 points.
5+7=
You're right, get 10 points.
9+6=
answer incorrectly.
1+0=
You're right, get 10 points.
2+3=
You're right, get 10 points.
8+4=
You're right, get 10 points.
5+7=
You're right, get 10 points.
9+6=
You're right, get 10 points.
1+0=
answer incorrectly.
Your grades are: 80