[問題] 面試考題

看板C_and_CPP作者 (願主陪著你)時間15年前 (2010/08/04 15:28), 編輯推噓2(2019)
留言21則, 11人參與, 最新討論串1/3 (看更多)
之前做到一題面試考題 題目大概是將輸入一段數字 ex: 567 將數字個別相加後直到剩下一位後輸出 567-> (5+6+7) 18 -> (1+8) 9 輸出9 我在想這個用gets(string) 之後用atoi轉 可是好像行不通= =? 腦袋有點卡住 請問這有比較好的方法嗎? -- ___ ╔══════╗ 小姐,打擾了 ▄▄▄ ═════╗ ╱ ╲ ║等等喔! ^.< ║ 我來收房租了 ▂███▂ │◎ ◎│ ║我在換內衣~║ ︵ ︵ ~│────│~ ╣你別開燈喔! ║ ‧ ‧ >(。) (。)< ╚══════╝ │ │ ψdiabloq13 ███◣ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.39.31.81

08/04 23:33, , 1F
一直x/10+=x%10到x<10就可以了?
08/04 23:33, 1F

08/04 23:35, , 2F
不如你整個試著寫寫看 遇到問題再拿上來討論?
08/04 23:35, 2F

08/04 23:35, , 3F
別只用想的 開啟你的IDE來敲程式碼吧
08/04 23:35, 3F

08/04 23:39, , 4F
數學解跟技術解都可以吧。
08/04 23:39, 4F

08/04 23:44, , 5F
C++ 的話可以 string + accumulate
08/04 23:44, 5F

08/04 23:46, , 6F
可以單純用string+acc而不用loop達到嗎@@? 沒試過耶XD
08/04 23:46, 6F

08/04 23:50, , 7F
accumulate 不也是迴圈嗎XD?
08/04 23:50, 7F

08/04 23:52, , 8F
用acc從頭加到尾我會啦...不過我想到還是要判斷長度
08/04 23:52, 8F

08/04 23:53, , 9F
不是個位數的話再做一次acc...
08/04 23:53, 9F

08/05 00:06, , 10F
08/05 00:06, 10F

08/05 01:05, , 11F
boss:spec要求要"輸入"數字 template版不符合 reject!
08/05 01:05, 11F

08/05 01:09, , 12F
cin>>n; while(n>=10){n= n/10+n%10; } cout<<n;
08/05 01:09, 12F

08/05 07:48, , 13F
ㄟ這題是不是看該數字%9是多少就多少阿 整除除外 整除是9
08/05 07:48, 13F

08/05 08:35, , 14F
推樓上(Y)! 還有被 0 整除的話就是 0 了 XD
08/05 08:35, 14F

08/05 09:36, , 15F
樓上應該有什麼typo在....XD
08/05 09:36, 15F

08/05 11:40, , 16F
template + metaprogramming 就好了阿 (  ̄ c ̄)y▂ξ
08/05 11:40, 16F

08/05 13:04, , 17F
不用atoi可以試試sscanf();
08/05 13:04, 17F

08/05 19:15, , 18F
atoi 和 gets 都已經是 deprecated functions 了。
08/05 19:15, 18F

08/05 19:17, , 19F
atoi() 就算了,現在做技術的看到你用 gets(),
08/05 19:17, 19F

08/05 19:17, , 20F
眉頭可能都會皺一下,會不會扣分我就不知道了。
08/05 19:17, 20F

08/06 10:53, , 21F
08/06 10:53, 21F
文章代碼(AID): #1CMOSBn_ (C_and_CPP)
討論串 (同標題文章)
以下文章回應了本文
問題
0
4
完整討論串 (本文為第 1 之 3 篇):
問題
1
4
問題
0
4
問題
2
21
文章代碼(AID): #1CMOSBn_ (C_and_CPP)