看板 Gov_owned 關於我們 聯絡資訊
※ 引述《THLu (生活需要更精彩!)》之銘言: : 只記得大概題目內容,有錯再請留言更正~ : 謝謝! : 資訊系統開發及維運 : 問答題: : 第一題 : (一)請說明人工智慧、機器學習、深度學習之間的關係。(6分) : (二)請說明區塊鏈技術的不可竄改性原理。(6分) : (三)請說明何謂邊緣運算。 : 第二題 請參考以下F函數範例 : int F(int number){ : if (number == 2) return 2; //number是偶數 : … … … : if (number == 1) return 1; //number是奇數 : … … … : if (number == 0) return 0; //number無法判別 : … … … : } : (一)請使用數學運算子%完成判斷F函數為奇數或偶數的程式 : (注意程式需包含當number為負數或無法計算時的情況) : (二)請使用邏輯運算子&完成判斷F函數為奇數或偶數的程式 : (注意程式需包含當number為負數或無法計算時的情況) : (三)當-1為2次方時結果為正數,當-1為3次方時結果為負數, : 請使用乘號運算子*和for迴圈完成-1為N次方時的正數或負數, : 判別F函數為奇數或偶數的程式 : (注意程式需包含當number為負數或無法計算時的情況) 第三題 原本是 int F(int number) { if(number == 0) return 2; if(number < 0) { number = (-1) * number;// 這行有錯 } int i, k; k = 1; for(i = 0; i < number; i++) { k = k * (-1); } if(k == (-1)) return 1; if(k == 1) return 2; return 0; } 但是會有 overflow 的問題 -(-(2^31))= 2^31, int 最大是 2^31 - 1; 難過Q Q 可以改成 if(number > 0) number = number * (-1); for(i = 0;i > number; i--) k = k * (-1); 才不會有錯 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.75.36 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Gov_owned/M.1596967861.A.A44.html
chses910372: 我連大一都不如QQ08/09 18:12
lin2492: 寫leetcode常常卡在overflow,但這種手寫code加上時間壓08/09 18:59
lin2492: 力真的考慮不到qq08/09 18:59
lin2492: 好奇這種有沒有部分給分08/09 19:00
amen1387: 我個人最後一題是用for(i=0;I<number;i++)number*=-1;08/09 23:02
amen1387: 再用if去判斷number是否大於0 08/09 23:03
amen1387: 啊 沒事 我搞錯了 好像是一樣的方法...08/09 23:04
GoGoJoe: 為什麼會有-2的32次方? 我不太明白。08/10 00:03
chses910372: int 最小值就是-(2^32)08/10 07:15
chses910372: 啊啊打錯08/10 08:14
※ 編輯: chses910372 (118.168.12.29 臺灣), 08/10/2020 08:18:33
GoGoJoe: 不用考慮溢位吧,全轉到非負整數討論就好。 08/10 09:21