回覆列表
-
1 # 洪哥與欣姐
-
2 # 髒話比謊話乾淨558
1~10的階乘的結果如下:1!=1;2!=2*1=2;3!=3*2*1=6;4!=4*3*2*1=24;5!=5*4*3*2*1=120;6!=6*5*4*3*2*1=720;7!=7*6*5*4*3*2*1=5040;8!=8*7*6*5*4*3*2*1=40320;9!=9*8*7*6*5*4*3*2*1=362880;10!=10*9*8*7*6*5*4*3*2*1=3628800。
0!=1。由於正整數的階乘是一種連乘運算,而0與任何實數相乘的結果都是0。所以用正整數階乘的定義是無法推廣或推導出0!=1的。即在連乘意義下無法解釋“0!=1”。給“0!”下定義只是為了相關公式的表述及運算更方便。
-
3 # 用戶3601608052324179
分析下程序,階乘可以用遞歸做,也可以用循環做,這裡就放上這兩種代碼了。
一.遞歸:
#include <stdio.h>
int f(int t)
{
if (t==1)
return 1;
else
return t*f(t-1);
}
int main()
{
printf("%d\n",f(10));
return 0;
}
程序分析:定義一個f函數,利用遞歸的特性,進行運算
10*f(9) = 10*9*f(8) …… 直到到1時返回1
得出結果:
二.循環:
#include <stdio.h>
int main()
{
int t1=1;
for(int i=10;i>=1;i--)
{
t1 = t1*i;
}
printf("%d", t1);
return 0;
}
程序分析:直接用一個for循環進行自減即可完成,定義t1用於存儲結果
得出結果:
正確答案是,10的階乘表示成“10!”
理由 階乘是基斯頓卡曼在1808年發明的運算符號。是運算術語
十的階乘等於式子1乘以2再乘以3…一直乘到10,數字比較大,不好算出來
例如1的階乘等於1。2的階乘等於2三的階乘等於六,四的階乘等於24,5的階乘等於120