Re: [討論] 大一教授出了OP的作業

作者: flydragon198 (Richard)   2014-11-02 17:44:58
※ 引述《HaoCherHong (Hao-Cher Hong)》之銘言:
: (C語言)
: 題目是印出Fibonacci Number (費氏
: 例如: 輸入 > 輸出
: 1 > 1
: 2 > 1
: 3 > 2
: 4 > 3
: 真是簡單 一個遞迴輕鬆搞定
: 诶等等
: 題目限制
: 只能用while, for迴圈, 不能遞迴、陣列(所以沒有字串)、指標、switch... (他還沒教的東西不能用)
: 嗯沒關係 可以用迴圈慢慢加上去
: 輕鬆搞定
: 诶等等
: 輸入範圍是1~100
: F(100) = 354,224,848,179,261,915,075
: 要69個bit才放的下
: ....
: 連他還沒教的unsigned long long 都放不下啊啊
: 原來老師想考我們大數處理 又不能遞迴陣列指標
: 這真的是大一生該遇到的作業嗎 Orz
: 求解 Orz
簡單寫個範例 http://codepad.org/6Xbvkt7G
因為int大小沒那麼大,所以兩者相加會造成錯誤
intA1 = 2147483647, intA2 = 2147483647, intA1 + intA2 = -2
把int拆開成兩個部分存,答案應該會是
42949 67294
intB1 + intB2 = 42948 167294
所以要把後面的部分進位到前面,不能用array就多宣告幾個變數
照這樣的方式去修改,應該是可以完成作業,只是不能用array還蠻沒意義的
因為多宣告幾個變數跟宣告array其實一樣意思
作者: flydragon198 (Richard)   2014-11-02 18:00:00
啊,我沒注意到原PO推文有寫已實做........Orz
作者: HaoCherHong (Hao-Cher Hong)   2014-11-02 18:05:00
沒關係 謝謝你 寫得很清楚!!
作者: chobitskey (愛而塔)   2014-11-02 23:46:00
我剛剛算一下,好像只有29bit

Links booklink

Contact Us: admin [ a t ] ucptt.com