求Sum的值算法(Sum=1+2-3+4-5+6-7+8........to n)

kbs_1983 2006-09-10 10:07:00
Sum=1+2-3+4-5+6-7+8........to n
求Sum的值算法
...全文
1084 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ivony 2006-09-12
  • 打赏
  • 举报
回复
比短吗?

static void Main()
{
int n = int.Parse(Console.ReadLine());
Console.WriteLine( 2 - n / 2 + n - n * (n & 1));
}
wzq6511 2006-09-11
  • 打赏
  • 举报
回复
private int sum(int n)
{
int sum=1;
for(int i=2;i<=n;i++)
{
if((i%2)==1)
{
sum-=i;
}
else if(i%2==0)
{
sum+=i;
}
}
return sum;
}
淡蓝色2 2006-09-11
  • 打赏
  • 举报
回复
看我的,最简短的代码:

static void Main() {
int n = Convert.ToInt32(Console.ReadLine());
int sum = ((n & 1) == 1 ? 3 - n : n + 4) / 2;
Console.WriteLine(sum.ToString());
}
Ivony 2006-09-11
  • 打赏
  • 举报
回复
我记得初中就学过高斯定理-等差数列求和公式。莫非搂主……
kbs_1983 2006-09-11
  • 打赏
  • 举报
回复
学过,忘记了!呵呵
kbs_1983 2006-09-11
  • 打赏
  • 举报
回复
Ivony

谢谢,您的方法很好,说到了本质!
Ivony 2006-09-11
  • 打赏
  • 举报
回复
Sum=1+2-3+4-5+6-7+8........to n
Sum=1+(2-3)+(4-5)+(6-7)+8........to n
Sum= 1 - 1 - 1 - 1 + 8

很显然,如n为偶数,Sum = 1 - ( n / 2 - 1 ) + n;
如n为奇数,Sum = 1 - ( (n - 1) / 2 - 1 );
threemonths 2006-09-10
  • 打赏
  • 举报
回复
public int count(int n)
{
int count = 0;
if(n%2==0 && n>0)
{
count = (4+n)/2;
}
else if(n%2==1 && n>0)
{
count = (3-n)/2;
}
else
{
}
return count

}
kbs_1983 2006-09-10
  • 打赏
  • 举报
回复
补充一下,这个是需要写一个控制台程序,接受用户输入的N值,然后算出
Sum=1+2-3+4-5+6-7+8........to n的值
输出Sum
kbs_1983 2006-09-10
  • 打赏
  • 举报
回复
int a(int n)
{
if(n==1) return 1;
else reuturn (1+n)*n/2;
}

明显没看清楚题目,如果N=3,SUM=0,如上算法,SUM=6
ohappy 2006-09-10
  • 打赏
  • 举报
回复
int a(int n)
{
if(n==1) return 1;
else reuturn (1+n)*n/2;
}
yizhixiaozhu 2006-09-10
  • 打赏
  • 举报
回复
int count(int n)
{
if(n <= 0)
return 0;
if(n%2 == 0)
return 1 - (n/2 - 1) + n;
else
return 1 - (n-1)/2;
}
kbs_1983 2006-09-10
  • 打赏
  • 举报
回复
是,N的值是接收用户输入的值
lizhizhe2000 2006-09-10
  • 打赏
  • 举报
回复
n 的值 可是无限估量的呀!
kbs_1983 2006-09-10
  • 打赏
  • 举报
回复
怎么语法错了?
kbs_1983 2006-09-10
  • 打赏
  • 举报
回复
好像不对,语法有问题
copico 2006-09-10
  • 打赏
  • 举报
回复
int a(int n)
{
if(n==1) return 1;
else reuturn n*a(n-1)
}

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧