推 VVll:真的好簡潔有力 感謝 01/12 12:48
※ 引述《VVll (偽Wii)》之銘言:
: 今天去遊戲公司(電子機台)做上機測驗 題目有3題
: 第一題解不出來 領便當了 哭哭
: VC++
: 題目1 計算2,222,222,222,222,222,222(19位) 與 0.000000000581(12位)相加n次的值
: 我用了土法煉鋼的方法
: 把變數1跟變數2 都設為string陣列
: int sum,n;
: 將sum=n*581去做轉換 不過當N>1000000(7位數)
: 且sum>10位數就會發生溢位
: int 範圍-2^31 ~ 2^31-1
: 也因為變數2*n沒辦法>1 所以與變數1 相加完全沒影響
: 主管就說 明天不用再來了 便當GET!
: 好心人方便的話 可以附程式碼寫法嗎 qq
: ---------------------------------------------------------------------
: 題目2 計算7進制的乘法器
: 這題勉強解出
: 用土法煉鋼的方法 所以結構很差
: 而且公司電腦的VC++ 2003 無法使用"^"運算符號....
: 只好寫出7*7*7*7.. 這種鬼東西
: 我先將乘數/被乘數 視為10進制 or 7進制
: 然後轉換成10進制後 做運算
: 運算完 再轉成7進制
: 輸出結果 end
: ----------------------------------------------------------------------
: 題目3 計算時鐘 時針與分針夾角
: 這題 google一下 時鐘的角度 就有結果了
: 先存取變數 時(hh)分(mm)
: 然後 求取時針的角度 扣掉 分針的角度
: var = (hh+mm/60)*30 - mm*6
: // 360度/12小時=30度/時 360度/60分=6度/分
: var為結果 end
: ------------------------------------------------------------------------
: 題外話
: 其實這些題目 在學時老師沒提過 自己也沒想過
: 自己程度還太差
: 還有太多的觀念 與 題型都不知道怎麼解 去哪找題目...
: 在這樣沒有很大的學習成長的話...
: 工作都不知道要怎麼找 都有點想放棄寫程式了qq
: 有人可以分享 以寫c/c++為工作的 到底要會哪些東西
: 概念 觀念 與 例題... 也許題型做多了 就不會領便當了(哭哭)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.248.4.114
第一題:
#include<stdio.h>
#define big unsigned __int64
#define e (big)1000000000000
void main(){
big a=(big)2222222222222222222,b=581;
int n;
char str[14];
printf(">>請輸入相加次數:");
scanf("%d",&n);
b*=n;
if(b>e) ++a;
sprintf(str,"%012I64u",b%e);
printf(">>計算結果為:%I64u.%s\n",a,str);
}