设计一个算法求1到n的乘积

来源:百度知道 编辑:UC知道 时间:2024/05/23 14:15:15
这是一道高二数学题。

输入正整数n,计算它的阶乘n!(n!=n*(n-1)*…*3*2*1)

咖啡= =你们教阶乘了= =?!
我是子弹我是子弹哈哈哈= =

阶乘没有特别的公式可以求,只能按定义公式计算。

一般做题的时候,考试的时候,我们都用统一的计算器,上面有阶乘的键,自动出答案的。但不适用于大数的计算。但也有简便计算的方法,就是如果出现n!/(n-2)!就可以根据定义公式很快得到答案为n*(n-1)。还有很多题也一样,需要从定义出发去推导,不一定要计算出n!就可以化简解题的。

而一般大数阶乘计算都是通过计算机编程计算的。这个程序是最基本、简单的程序之一

这里
ln(N!)=N×lnN -N或N!=1*2*3*....(N-2)*(N-1)*N

#include <stdio.h>

void main()
{
int i =1;
int s = 1;
int N;
printf("please input N:");
scanf("%d", &N);
for(i = 1; i < =N; i++) s *=i;
printf("%d", s);

}

Private Sub command1_click()
Dim n As Integer, s As Integer, i As Integer, m As Integer
n = InputBox("请输入N的值:")
For i = 1 To n
If i Mod 5 = 0 Then
m = i
Do While m Mod 5 = 0
s = s + 1
m = m / 5
Loop
End If
Next i
Print s
End Sub

n(n+1)/2