编写程序,求s=1×2×3 2×3×4 …… n×(n 1)×(n 2)的值。n由文本框输入
1个回答
展开全部
首先如果问题是s=1×2×3+2×3×4 ……
+n×(n+1)×(n+2),是将3个连续递增的数相加,那可以这样解决(C语言):
1、首先式子中的n是由我们输入,所以应该写scanf("%d",
&n);
当然n变量先要在前面定义好;
2、然后就是要解决算式中的算法问题了,可以看出式子是前一串加后一串这样子的,而且每一串的数都是连续递增的,并且每两串之间每个数也是递增关系的,所以我们其实只需要写出一串的算法就可以了,也就是:n
*
(n+1)
*
(n+2)
这样可以了
3、那么如果n>1呢,也就是说式子要执行多次,那么这时就需要一个变量s来保存前面算的值,然后用这个值加上后面算出来值,即:s
=
s
+
n
*
(n+1)
*
(n+2);
即:
123456int n=0, s=0, i;scanf("%d", &n);for(i=1; i<=n; i++) // i=0时s=0,所以可以直接设为从1开始才做运算{ s = s + i * (i+1) * (i+2);}
+n×(n+1)×(n+2),是将3个连续递增的数相加,那可以这样解决(C语言):
1、首先式子中的n是由我们输入,所以应该写scanf("%d",
&n);
当然n变量先要在前面定义好;
2、然后就是要解决算式中的算法问题了,可以看出式子是前一串加后一串这样子的,而且每一串的数都是连续递增的,并且每两串之间每个数也是递增关系的,所以我们其实只需要写出一串的算法就可以了,也就是:n
*
(n+1)
*
(n+2)
这样可以了
3、那么如果n>1呢,也就是说式子要执行多次,那么这时就需要一个变量s来保存前面算的值,然后用这个值加上后面算出来值,即:s
=
s
+
n
*
(n+1)
*
(n+2);
即:
123456int n=0, s=0, i;scanf("%d", &n);for(i=1; i<=n; i++) // i=0时s=0,所以可以直接设为从1开始才做运算{ s = s + i * (i+1) * (i+2);}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询