如何用数据结构随机输出一个数学表达式,可包括小括号、中括号、+、-、*、\运算,数据可以有整数或小数

如何用数据结构随机输出一个数学表达式,可包括小括号、中括号、+、-、*、运算,数据可以有整数或小数
用户看到这个表达式后,输入结果,程序判别结果是否正确,一题计算一次,直到n个题目完成.
如果有会的大神还清叙述下总体的算法思想,要是还提供代码的话就更好啦,
liudel9803 1年前 已收到1个回答 举报

只爱双鱼男ALLEN 幼苗

共回答了15个问题采纳率:86.7% 举报

引入“子表达式”概念.
最终表达式可以是如下结构:子表达式 [运算符 子表达式]...
其中,子表达式可以由其它子表达式构成,可以规定其层数(也就是内部可嵌套多少个子表达式),然后根据层数不同和运算符优先度不同(比如加比乘要低)来判断给该子表达式两端添加什么样的括号.
1.主程序随机产生子表达式的个数、层数,然后调用生成子表达式的子程序.
2.生成子表达式的子程序随机生成数字、运算符或调用自身以生成下一层的子表达式.
3.最后返回主程序,生成最终表达式.
时间优先,分数太少,你又不说开发平台和语言,只能如此了……

1年前

4
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 0.045 s. - webmaster@yulucn.com