输入了就要计算,这是计算器的功能要求。
本程序要解决多项式的运算,难度不是一般的大,甚至有人怀疑使用了Eval。已经说过了,当然不是这样的。
先分析算式特点,我们看到,算式其实是有规律的,一个数字加一个运算符,再加一个数字加一个运算符,如此循环而已。可能最后没有运算符只有数字了。程序员同志,你想到解决办法了没有?这就是一个List啊!
所以第一步,设计List泛型的原型是当务之急。
原型其实就是一个数字加一个运算符,就两字段,第一个当然设计成string类型,第二个设计成什么呢?运算符的特点你看到了吗?只那么五个,加减乘除余(已经说过了,原计算器是求百分比,我这里弄成求余),显然,我们的enum类型出场了。
所谓None,不就是没有吗, 正好是最后一个算式没有运算符。namespace MyCacl { public enum TypeOp { Add, Subtract, Multiply, Divide, Mod, None } }
其实没这么简单,同学们,但这节课时间到了。namespace MyCacl { public class CaclList { public string StringEnter { get; set; } internal TypeOp TypeOp { get; set; } public CaclList() { StringEnter = ""; TypeOp = TypeOp.None; } } }
第五果结语。学编程最重要是其实是分析,善于分析比什么都强,同时是知识储备的综合运用。
第五课等于之解决思路——C#计算器编程教学
最新推荐文章于 2023-07-13 16:11:12 发布