当前位置:编程学习 > C#/ASP.NET >>

那位师傅能帮小弟一个忙?谢谢!

用C#编写一个方法,计算:1 - 2 + 3 - 4 + 5 - 6 + 7 - 8 + 9 - 10 + 11 - ……N,能详细点更好! --------------------编程问答-------------------- 1+(3-2)+(5-4)+ ............  --------------------编程问答--------------------

private int GetResult(int n)
{
    int result = 0;
    for(int i=1;i<=n;i++)
    {
        if(i%2 == 0 && i>1)
           result -= i;
        else
           reuslt += i;
    }
    return result;
}
--------------------编程问答-------------------- 英雄。。。
这个好象很简单的啊。。
(1 - 2) + (3 - 4) + (5 - 6) + (7 - 8) + (9 - 10)不就是一个递归吗?

懒得写算法了。。  --------------------编程问答-------------------- 还有一个比较重要的。。
根本不需要算法。

其中每一项结果都是 - 1,那么结果就是:
1、N是偶数 = N/2 * (-1);
2、结果是奇数 = (N-1)/2 * (-1) + N
。。。。。。。。。。。。。。。。。。。。。。。。。 --------------------编程问答-------------------- 第一种,将两项看做一项
(1 - 2) + (3 - 4) + (5 - 6) + (7 - 8) + (9 - 10)
算法如下:

public int GetSum(int n)
        {
            int sum = 0;
            int mod = n / 2;
            sum = mod * (-1);
            if (n % 2 != 0)
                sum += n;
            return sum;
        }



第二种,是偶数的话乘以(-1)
算法如下:

  public int GetSum(int n)
        {
            int sum = 0;
            for (int i = 1; i <= n; i++)
            {
                if (i % 2 != 0)
                    sum += i;
                else
                    sum += i * (-1);

            }
            return sum;
        }
--------------------编程问答-------------------- 以上是最简单的两种算法 --------------------编程问答-------------------- public int GetValue(int n)
        {
            int sum = 0;
            int mod = n / 2;
            if(mod(n/2)>0 && n>1)
            {
                return -1*n/2
            }
            else
            {
               return -1*n/2+n;
            }
        }
--------------------编程问答--------------------
引用 2 楼 ojlovecd 的回复:
C# codeprivateintGetResult(int n)
{
 int result=0;
for(inti=1;i<=n;i++)
    {
     if(i%2==0)
           result-=i;
      else
          reuslt+=i;
    }
return result;
}

这样就好了
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,