黑马程序员技术交流社区

标题: n!运算我该怎么实现,我想做成一个方法,以后直接拿了用。 [打印本页]

作者: xt654005440    时间: 2013-7-28 17:46
标题: n!运算我该怎么实现,我想做成一个方法,以后直接拿了用。
本帖最后由 xt654005440 于 2013-8-1 23:28 编辑

RT~~n!运算我该怎么实现,我想做成一个方法,以后直接拿了用。
作者: sxdxgzr@126.com    时间: 2013-7-28 18:30
int Fun(int n)
{
      if (n == 0 || n == 1) return 1;

       int i =1,sum = 1;
       while (i<=n)
        {
                sum *= i;
                i++;
         }
         return sum;
}
作者: brucel50    时间: 2013-7-28 23:07
public static void Njiecheng(int n)
{
        int intCj;
        for(int i = 1;i<=n;i++)
        {
                intCj *= i;
        }
        return intCj;
}
作者: 马晓凤    时间: 2013-7-29 11:29

public static int GetSumByInt(int n)
{
        int iSum=0;
        for(int i = 0;i<=n;i++)
        {
                iSum+= i;
        }
        return iSum;
}
作者: 熊丽    时间: 2013-8-1 00:20
前两位的方法差不多,还可以用递归的方法
protected int GetSum(int n)
        {
            if (n == 1 || n == 0)
                return 1;
            else
                return GetSum(n - 1) * n;

        }

作者: 黑骏马    时间: 2013-8-1 02:04
本帖最后由 黑骏马 于 2013-8-1 02:21 编辑

藤椅和板凳两位同学显然都没运行过自己的代码。
用循环方法代码应该是这样的:
  1.     public static int Jiecheng(int n)
  2.     {
  3.         int nJiecheng = 1;
  4.         if (n == 0 || n == 1)
  5.         {
  6.             return 1;
  7.         }
  8.         else
  9.         {
  10.             for (int i = 1; i <= n; i++)
  11.             {
  12.                 nJiecheng *= i;
  13.             }
  14.             return nJiecheng;
  15.         }
  16.     }
复制代码

作者: lvjayj    时间: 2013-8-1 22:25
学习了,用递归,就像楼上说的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2