阶乘
2015-12-03 19:08
330 查看
定义:
阶乘是基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号,是数学术语。
一个正整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,并且有0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。
亦即n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。
任何大于 1 的自然数n 阶乘表示方法:
或
Java中的阶乘:
另外一种方法:
PHP中的阶乘:
阶乘是基斯顿·卡曼(Christian Kramp,1760~1826)于 1808 年发明的运算符号,是数学术语。
一个正整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,并且有0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。
亦即n!=1×2×3×...×n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!×n。
任何大于 1 的自然数n 阶乘表示方法:
或
Java中的阶乘:
public class Main{ final static int MAX=20;// 可以替换 MAX 的值。 public static void main(String[] args) { int i=1; long result=1; long[] n=new long[MAX]; do{ result*=(i+1); System.out.println(i+"!="+result); n[i]=result; i++; }while(i<MAX); n[0]=1; //阶乘end } }
另外一种方法:
public static final int fac(int n) {return (n == 0)? 1 : n * fac(n - 1); }
PHP中的阶乘:
<?phpfunction jc($n){ if($n>1){ return $n*jc($n-1); }else{ return 1; }}?>Python 阶乘 #!/usr/bin/env pythonimport sysdef warn(): print("Usage:%s number" % sys.argv[0]) print("Please input max number that you want to do factorial on.") def factorial(value): if value == 0: return 1 elif value == -1: return (((-1)*(-1))-(-1)*(-1)) else: I=1 for J in range(1,value); I*=(J+1) return Iif __name__ == "__main__": if len(sys.argv) == 1: warn() elif len(sys.argv) >2: warn() elif int(sys.argv[1]) < -1: print("Please give an integer.") else: print("%s!=%s " % (sys.argv[1],factorial(int(sys.argv[1]))))
JavaScript 阶乘:
function factorial(num){ if (num <= 1) return 1; else return num * arguments.callee(num - 1); };
相关文章推荐
- ASP.NET]ASP.NET C# 用 Print2Flash 实现在线预览 Word、PPT、PDF 等
- oracle 基于PLSQL实现发送邮件 UTL_SMTL
- 快速排序
- 将浏览器窗口变成简单的文本编辑器
- Remove Element 移除元素
- 【HLG 1572】表达式计算
- 讲义7:运算符及函数
- 证明:二分图中的环只能是偶环,不可能是奇环
- 《疯狂JAVA讲义》——二维数组
- NYOJ 263 精 挑 细 选
- VVDocumenter 使用
- 移动端开发备忘
- linux chkconfig配置自启动shell
- ios (底层runtime)实现万能跳转
- 链表ADT的实现
- 记一次pending请求问题查找过程
- 锐浪报表应用系列二
- 一句话冒泡
- 旋转动画加载, 旋转角度
- 隐藏51la、cnzz统计图标方法及隐藏统计代码方法