//请各位高手见谅:
S=1+(1+2)+(1+2+3)+(1+2+3+4)+ …… (1+2+3+4+n)
// 结果是多少?假如n=100;
// 请大侠们不要用高深的算法来做,做出来我又得花好多好多时间去看程序了
// 用简单的循环我想应该可以实现吧!想了两个小时,最后还是要向大家求救
// 是不是要用到循环的嵌套呢?
19 个解决方案
#1
int S = 0;
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= i; j++ )
S += j;
#2
for i = 1 --> 100
{
for (j = 1 --> i)
{
...
}
}
{
for (j = 1 --> i)
{
...
}
}
#3
int sum = 0;//结果就是S
for (int i=1;i<=100;++i)
{
for (int j=1;j<=i;++j)
{
sum+=j;
}
}
#4
//
哎!果然要用到循环的嵌套,谢谢大家了!
#5
楼上正解
#6
一重循环搞定:
int S = 0, a = 0;
for (int i = 1; i <= n; i++)
{
a += i;
S += a;
}
#7
s = n*(n+1)*(n+2)/6
我现在还能算出来不容易啊
我现在还能算出来不容易啊
#8
或直接用公式
a(n) = n(n+1)/2
= b(n) - b(n-1)
其中 b(n) = n(n+1)(n+2)/6
因此 S(n) = b(n) - b(0) = b(n) = n(n+1)(n+2)/6
a(n) = n(n+1)/2
= b(n) - b(n-1)
其中 b(n) = n(n+1)(n+2)/6
因此 S(n) = b(n) - b(0) = b(n) = n(n+1)(n+2)/6
int S = n*(n+1)*(n+2)/6;
#9
int n=4;
int sum=0,tmp=0;
for(int i=1;i<=n;i++)
{
tmp=tmp+i;
sum=sum+tmp;
}
#10
上面有人发
#11
一道题有这么多解!C++真的很厉害,不,应该说是上面的各位很N。
第一次见到这么牛的论坛,很活跃,要是在其他地方,你非得等上至少一天时间(恐怕到时候见到答案自己都能解决掉了)。
UP “ CSDN ” !
第一次见到这么牛的论坛,很活跃,要是在其他地方,你非得等上至少一天时间(恐怕到时候见到答案自己都能解决掉了)。
UP “ CSDN ” !
#12
#include <stdio.h>
int test(int n);
int sum(int n);
int main()
{
printf("%d",test(3));
return 0;
}
int test(int n)
{
if(n==1)
return 1;
return sum(n)+test(n-1);
}
int sum(int n)
{
int sum = 0;
while(n>0) sum+=n--;
return sum;
}
int test(int n);
int sum(int n);
int main()
{
printf("%d",test(3));
return 0;
}
int test(int n)
{
if(n==1)
return 1;
return sum(n)+test(n-1);
}
int sum(int n)
{
int sum = 0;
while(n>0) sum+=n--;
return sum;
}
#13
厉害的。学习
#14
这是数学题 谢谢
#15
正解!!!
#16
高手,的确很多。
#17
厉害啊!
#18
看来大家都是高手啊 !!!惭愧!!!
#19
#include <stdio.h>
main()
{
int m,n,multiply;
unsigned sum;
sum=0;
n=1;
for (m=100;m>=1;m--)
{
multiply=m*n;
sum=multiply+sum;
n++;
}
printf("sum is %u\n",sum);
return (0);
}
main()
{
int m,n,multiply;
unsigned sum;
sum=0;
n=1;
for (m=100;m>=1;m--)
{
multiply=m*n;
sum=multiply+sum;
n++;
}
printf("sum is %u\n",sum);
return (0);
}
#20
#1
int S = 0;
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= i; j++ )
S += j;
#2
for i = 1 --> 100
{
for (j = 1 --> i)
{
...
}
}
{
for (j = 1 --> i)
{
...
}
}
#3
int sum = 0;//结果就是S
for (int i=1;i<=100;++i)
{
for (int j=1;j<=i;++j)
{
sum+=j;
}
}
#4
//
哎!果然要用到循环的嵌套,谢谢大家了!
#5
楼上正解
#6
一重循环搞定:
int S = 0, a = 0;
for (int i = 1; i <= n; i++)
{
a += i;
S += a;
}
#7
s = n*(n+1)*(n+2)/6
我现在还能算出来不容易啊
我现在还能算出来不容易啊
#8
或直接用公式
a(n) = n(n+1)/2
= b(n) - b(n-1)
其中 b(n) = n(n+1)(n+2)/6
因此 S(n) = b(n) - b(0) = b(n) = n(n+1)(n+2)/6
a(n) = n(n+1)/2
= b(n) - b(n-1)
其中 b(n) = n(n+1)(n+2)/6
因此 S(n) = b(n) - b(0) = b(n) = n(n+1)(n+2)/6
int S = n*(n+1)*(n+2)/6;
#9
int n=4;
int sum=0,tmp=0;
for(int i=1;i<=n;i++)
{
tmp=tmp+i;
sum=sum+tmp;
}
#10
上面有人发
#11
一道题有这么多解!C++真的很厉害,不,应该说是上面的各位很N。
第一次见到这么牛的论坛,很活跃,要是在其他地方,你非得等上至少一天时间(恐怕到时候见到答案自己都能解决掉了)。
UP “ CSDN ” !
第一次见到这么牛的论坛,很活跃,要是在其他地方,你非得等上至少一天时间(恐怕到时候见到答案自己都能解决掉了)。
UP “ CSDN ” !
#12
#include <stdio.h>
int test(int n);
int sum(int n);
int main()
{
printf("%d",test(3));
return 0;
}
int test(int n)
{
if(n==1)
return 1;
return sum(n)+test(n-1);
}
int sum(int n)
{
int sum = 0;
while(n>0) sum+=n--;
return sum;
}
int test(int n);
int sum(int n);
int main()
{
printf("%d",test(3));
return 0;
}
int test(int n)
{
if(n==1)
return 1;
return sum(n)+test(n-1);
}
int sum(int n)
{
int sum = 0;
while(n>0) sum+=n--;
return sum;
}
#13
厉害的。学习
#14
这是数学题 谢谢
#15
正解!!!
#16
高手,的确很多。
#17
厉害啊!
#18
看来大家都是高手啊 !!!惭愧!!!
#19
#include <stdio.h>
main()
{
int m,n,multiply;
unsigned sum;
sum=0;
n=1;
for (m=100;m>=1;m--)
{
multiply=m*n;
sum=multiply+sum;
n++;
}
printf("sum is %u\n",sum);
return (0);
}
main()
{
int m,n,multiply;
unsigned sum;
sum=0;
n=1;
for (m=100;m>=1;m--)
{
multiply=m*n;
sum=multiply+sum;
n++;
}
printf("sum is %u\n",sum);
return (0);
}