筆試題 計算N的階乘

2021-05-07 09:57:51 字數 2261 閱讀 3650

public

class

test 

stringbuilder tmpsb 

=new

stringbuilder(sum);

for(j 

=i; j 

<

len1 -1

; ++"0

");}result 

=add(result,tmpsb.tostring());}}

else

stringbuilder tmpsb 

=new

stringbuilder(sum);

for(j 

=i; j 

<

len2 -1

; ++"0

");}result 

=add(result,tmpsb.tostring());}}

return

result;

}private

static

string add(string num1, string num2)

else

if(len1 

>

len2)

else

}else

if(len2 

>

len1)

else}if

(naddon 

>0=

sb.tostring();

return

result;

}private

static

string factorial(

intn)

return

result;

}public

static

void

main(string args) 

throws

exception

}再來個c++版做對比

//簡單起見,不考慮負號的情況

#include 

<

iostream

>

#include 

<

vector

>

#include 

<

algorithm

>

using

namespace

std;

string

add(

string

num1, 

string

num2)

else

tmpsum.push_back(sum %10

+'0'

);}if(len1 

>

len2)

else

tmpsum.push_back(sum %10

+'0'

);}}else

if(len2 

>

len1)

else

tmpsum.push_back(sum %10

+'0'

);}}if

(naddon 

>0)

reverse(tmpsum.begin(),tmpsum.end());

copy(tmpsum.begin(),tmpsum.end(),back_inserter(result));

return

result;

}string

multipy(

string

num1, 

string

num2)

string

tmpsb(sum);

for(j 

=i; j 

<

len1 -1

; ++"0

");}result 

=add(result,tmpsb);}}

else

string

tmpsb(sum);

for(j 

=i; j 

<

len2 -1

; ++"0

");}result 

=add(result,tmpsb);}}

return

result;

}string

factorial(

intn)

return

result;

}int

main()

return0;

}

python筆試題 計算n的階乘

計算n!例如n 3 計算3 2 1 6 求10!方法一 可以用python裡面的reduce函式,reduce 函式會對引數序列中元素進行累積 1.用lambda函式 from functools import reduce a 10 b reduce lambda x,y x y,range 1 ...

階乘的筆試題

1 n 末尾有多少個0?這道題可以參考 程式設計之美 2.2節 不要被階乘嚇倒 用數學語言描述解法對我來說,太艱難了。我這裡只是舉例子 n 100 加以說明。方法一 在1 100中,5 2 10,10 1 10,15 2 30,20 1 20,25 4 100,100 1 100 這裡注意到,只要是...

計算n的階乘

c語言學習初期,相信你肯定編寫過 計算n的階乘 吧!怎麼樣,是不是覺得過於簡單了呢?哈哈,就讓我們再次回溫這道題,詳解它的編寫過程 從最初的構思到具體的設計,體會乙個腦海中的idea切切實實轉化為 的奇妙過程 下面進入正題 說明 本題我們暫時不 溢位問題,所以就拿 計算5的階乘 舉例 思路構想 計算...