编程:1-2+3-4+5-6+7
我是新手,能解释的详细一点吗
c/c++都可
谢谢!!!!
[解决办法]
定义一个累加函数int acc(int i),
又由用户输入累加数字的个数。
如输入7,则
1-2+3-4+5-6+7……
上式子=1+2+3+4+5+6+7-2*(2+4+6)=1+2+3+4+5+6+7-2*2*(1+2+3)
由于是整型数用户输入6 和 7,减号后的表达式其实是一样的,所以用对数字是奇数还是偶数进行考虑。
输入为6时候,式子简化为 acc(6) -4*acc(6/2)=acc(6)-4*acc(3);
输入为7时候,式子简化为 acc(7)-4*acc(7/2),由于数字为整型,7/2仍为整型,取整后仍为3。
即式子简化为acc(7)-4*acc(3);
比较两式可以得出计算结果。
这样做思路也比较清楚,也不失结果的正确性,更加符合语言开发的模块化设计。