如何用批處理計算自然數n的階乘,如何用批處理計算自然數N的階乘?

2022-02-27 04:56:51 字數 770 閱讀 4903

1樓:彭清乜

暈。。不就是乙個迴圈麼。。。這個還能寫不出來???

int n=100;

int sum=1;

for(i=1;i<=n;i++)

print(sum)

上面最後得到的sum就是n的階乘。上面只是乙個實現思路,到了具體某種語言中修改正相應的語法即可。

不過有乙個重要問題需要注意。階乘是乙個迅速遞增的數字,乙個小數字的階乘可能是乙個極大的整數。比如899999的階乘可能是乙個幾乎無限大的數字。

這樣的數字需要用特殊的儲存結構,也就是說一般的程式語言中提供的int整型/長整型都不能滿足要求。

因此這個程式最大的難度在於如何儲存超大型整數。而不在於如何計算階乘。

儲存超大型整數是乙個難題。我記得在某一年的acm程式大賽中有這麼乙個題目,要求設計乙個儲存結構來儲存超大型整數。可見超大型整數的儲存都是乙個大問題,何況還要進行計算。

2樓:匿名使用者

@echo off

:docls

set a=1

set /p n=輸入n!

for /l %%i in (1,1,%n%) do set /a a*=%%i

echo %n%!=%a%

pause

goto do

3樓:匿名使用者

int可以放100階乘的值 ????

不行吧。

將自然數2019拆分成n個連續自然數的和,那麼,n

設2010 n n 1 n n n 1 2n n 2 所以 n 1 2n n 4020 而4020 60 67 由於67不能再分解,所以2n n 67,所以n 1 60,從而n 59.2010 2 4020 4020 63 4020 2 2 3 5 67 則n是 4020的 小於63的 奇質數因數,...

連續的自然數,中間是n,這自然數的和是多少

三個連續的自然數分別是 n 1 n n 1 所以這三個自然數的和是 n 1 n n 1 3n。自然數 記為n 是大於等於0且沒有小數部分的數字。當說到數字的時候,通常是指自然數,因為自然數是最基礎的數字。自然數是從0開始的整數,沒有小數部分,一直增大到正無窮 0,1,2,3,4,事實上,自然數是由稱...

n為100以內的自然數那麼能令,n為100以內的自然數,那麼能令2n 1被7整除的n有多少個

14個 n為100以內的自然數 0 n 100 1 2n 1 199 因此2n 1是 1到199中的奇數。因 1到199中,每14個數中分別有1個數是被7整除的奇數 偶數。因此共有 199 1 1 14 14.36 向下取整,有14個。整除與除盡的關係 整除與除盡既有區別又有聯絡。除盡是指數a除以數...