回 帖 发 新 帖 刷新版面

主题:急!

请问一下,怎么实现0!=1!
P=N!/(N-R)!又该怎么实现!

回复列表 (共3个回复)

沙发

首先第一个很好实现:
if i=0 then y=1
第二个也不难:
p=1
for i=n-r+1 to n
p=p*i
next i

板凳

N-R+1是不是为了让分母不等于0?
如果N=3,R=4,那分母还是等于0,是不是还要加上if i =0 then y=1?

3 楼

不是的,仅仅是公式翻译过来就是这样。
P=N!/(N-R)!=1*2*3*....*(n-r)*(n-r+1)*.....*n/(1*2*3*...*(n-r))
               =(n-r+1)*(n-r+2)*.....*n
所以,如上!

关于“如果N=3,R=4”是不用考虑的,因为阶乘的定义域是没有负数的(就连零都是补充定义的),所以只要考虑n>r的情况就行了。
如果你实在要做负数的阶乘,就要先自己做一个补充定义。然后依据定义来组织程序。

我来回复

您尚未登录,请登录后再回复。点此登录或注册