none
求和算法 RRS feed

  • 问题

  • 题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。 求C# code(最好.net2.0),谢了
    2011年7月25日 2:46

答案

  • void Main()
    {
    int n=100;
    int sum=Enumerable.Range(1,n).Sum();
    Console.WriteLine(sum); //5050
    }
    .NET 3.5



    Best Regards,
    If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
    2011年7月25日 3:59

全部回复

  • void Main()
    {
    int n=100;
    int sum=Enumerable.Range(1,n).Sum();
    Console.WriteLine(sum); //5050
    }
    .NET 3.5



    Best Regards,
    If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
    2011年7月25日 3:59
  • dear

    这是典型的作业题问法,请描述你对题目的努力


    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/
    2011年7月25日 4:35
  • 我考虑用递归

    public static int Sum(int n)
    {
              int  temp+= Sum(n - 1) + n;
              
                return temp;
    }

     

    边界条件n>0没法判断

    2011年7月25日 5:05
  • 我考虑用递归

    public static int Sum(int n)
    {
              int  temp+= Sum(n - 1) + n;
              
                return temp;
    }

     

    边界条件n>0没法判断


    楼主你好:)

    恐怕不能如你所愿。因为递归必须有一个终止条件。不用if几乎很难办到。

    还是采纳MVP的答案吧。我已经标记为建议答案了:)


    如果你有其它意见或私下交流,请直接发送maledong_work@foxmail.com;或者讨论(Talk)
    If you do not have QQ, please open the page and download it and click the image to talk or leave message for me.
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    2011年7月25日 6:03
    版主
  • dear

    这是很奇怪的需求,为何不能用if !?写代码最重要的就是if判断式


    秘訣無它,唯勤而已 http://www.dotblogs.com.tw/yc421206/
    2011年7月25日 7:04
  • 你好! 

    这是一个数据公式,公式 = N*(N+1)/2

    C# 代码为:

    static int R(int n)
    {
      return n * (n + 1) / 2;
    }
    


    知识改变命运,奋斗成就人生!
    2011年7月26日 5:12
    版主