我正在编写一个程序,创建可以解决的随机计算,针对小学生。
我想随机化一个操作类型,例如。 +, - ,*,/用于各种难题的问题。目前我在随机整数上使用switch语句以字符串形式返回操作。但是,当我希望执行检查以验证正确的用户输入时:
if((randNumOne randOperation randNumTwo) > (randNumThree randOperationTwo randNumFour))
这显然不起作用但是我无法弄清楚如何在语句中实现随机操作来检查用户输入,我将如何这样做?
答案 0 :(得分:0)
通常,当你有一个switch语句时,它表明你真正需要的是一个实现特定接口的对象数组。您可以使用随机整数作为数组的索引,而不是使用switch语句,并使用该对象来获取所需的不同行为。
您可能有一个界面:
string getOperatorName(); // Different instances return "+", "-", "*"...
double evaluateOperator(double operanda, double operandb); // Different instances implement +, -, *
答案 1 :(得分:0)
你有没有试过制作一个静态函数(无论它在哪里),它有两个参数(我假设你只在这里使用二进制运算)并返回一个随机(再次,二进制)运算的结果给出两个论点?当然,它必须有一些类型的除以零的检查(只是让异常未处理或甚至处理在这种情况下不好)。