Re: [問題] 計算N!程式 大數

看板C_and_CPP作者 (偷拿程式碼的八卦)時間14年前 (2010/05/18 14:47), 編輯推噓6(600)
留言6則, 6人參與, 最新討論串1/1
※ 引述《s86279 (Charlie)》之銘言: : LINUX平台C語言 : 我要寫一支計算N階的程式 : 但是要計算到40階 : 該怎麼處理溢位的問題?? : 麻煩幫幫我的忙 感恩 #include <stdlib.h> #include <openssl/bn.h> int main(int argc, char** argv) { BIGNUM * a = BN_new(); BIGNUM * b = BN_new(); BIGNUM * result = BN_new(); BN_CTX * ctx = BN_CTX_new(); BN_dec2bn(&a,"1"); BN_dec2bn(&b,"1"); BN_dec2bn(&result,"1"); for(int i=0;i<=1000;i++){ BN_mul(result,result,b,ctx); BN_add(b,b,a); if(i%100==0){ printf("%d: %s\n",i,BN_bn2dec(result)); } } BN_free(a); BN_free(b); BN_free(result); BN_CTX_free(ctx); return (EXIT_SUCCESS); } http://www.slproweb.com/products/Win32OpenSSL.html http://www.openssl.org/docs/crypto/bn.html gcc -lssl -lcrypto -lz 這種東西自己寫實在太累了... 反正openssl也很多人在用...檔案也不大,而且你用linux也有內建了... -- 2009年 愛滋感染人數統計 異性性行為女 42 異性性行為男 273 同性性行為男 895 台灣2005年起實施孕婦非強迫愛滋篩檢,2008年起強制新生兒篩檢。 每年有約1%的孕婦接受篩檢,每年有大於1%的異性性行為者接受篩檢。 同性戀人口雖然只佔5%-10%,但是因為接受篩檢的比例是異性戀 1%的好幾好幾倍 所以陽性的人口數才會看起來好像比較多 詳情請看ptt.cc L_BoyMeetsGi 版 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.28.219

05/18 15:56, , 1F
推~~~, 老實說我還真沒想到拿ssl的library來用...Orz
05/18 15:56, 1F

05/18 16:21, , 2F
Good Job....XD
05/18 16:21, 2F

05/18 18:07, , 3F
(拜)
05/18 18:07, 3F

05/18 18:08, , 4F
想不到+1 有學習有推 XD
05/18 18:08, 4F
※ 編輯: jlovet 來自: 211.74.186.91 (05/18 23:11)

05/18 23:11, , 5F
GNUMP不是更好用?
05/18 23:11, 5F

05/19 16:47, , 6F
SSL好耶~真正好
05/19 16:47, 6F
文章代碼(AID): #1ByZVnMj (C_and_CPP)