[心得] 天下 軟體研發工程師應徵

看板Soft_Job作者 (喜憨人)時間9年前 (2015/01/20 14:56), 編輯推噓32(34242)
留言78則, 38人參與, 最新討論串1/2 (看更多)
各位大哥大姐好! 小弟社會初心者, 近日至台中的天下應徵軟體研發工程師(研替) 故事是這樣子的~ 於人力銀行主動投履歷後約一個禮拜收到面試時間的電話通知, 電話那端的女性還算客氣, 不過說話很急這樣! 迅速回應了我預定的當日流程(筆試+面試), 這與版上各位前輩提供的資訊都相同呢! 面試當天, 電梯直達十五樓, 第一眼的感覺似乎和他們YouTube上公司簡介有點差異?! 比想像中的冷清? 簡介: http://ppt.cc/KFmN 不過一眼望去空間很大的樣子, 遇上四位員工, 兩位女性臉上透露似乎有心事? 一位嚴肅的男性, 一位親切倒水給我的女性, 共有五個人應徵,一人穿西裝其餘四人著襯衫+一般外套, 一開始安排我到一面落地窗旁的休息區, 等待約十分鐘(我比較早到場),公司員工發下兩張紙, 一張是履歷表(當初人力銀行投遞的),被要求寫上住處地址, 另一張空白紙是筆試的考試用紙,先寫上日期與名字, 後來被告知應徵人數有點多,移動到另外一個樓層準備筆試, 五人間隔坐在會議桌前 果不其然,筆試的題目是傳說中的 1. 輸入浮點數,輸出四捨五入的int 2. 輸入3邊長,判斷 正三角 直角 其他 不是三角形 超級感謝各位大大的經驗分享! 主考官說完題目,計時十分鐘! 十分鐘後極準時收卷, 然後...... 我就被「謝謝!再加油!」 主考官對我說三角形的正確,可是第一題錯了! 有點意外的我想說請示一下錯誤的地方, 但是就被他以五指指向門口請出去了...... 就這樣結束了我人生中的第一次工作面試機會~ 另外想請問各位大大 小弟我的這個程式碼(C++)是否真的有問題? 或是我寫得真是太弱智, 不了解被刷掉的原因這樣! 很想要從每次的經驗中學習到東西和改進 非常感謝各位!!! 四捨五入那題程式: http://ppt.cc/l4Hh 有點想要再次投它履歷...... 因為工作技能相較於其他間,恰好能符合又離家近...... 一個月內應徵兩次相同公司職缺不曉得會不會很奇怪? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.216.248.238 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1421736962.A.D88.html

01/20 15:01, , 1F
那當然錯啊.....
01/20 15:01, 1F

01/20 15:03, , 2F
你有自己跑過嗎? 出來的是正確的嗎?
01/20 15:03, 2F

01/20 15:04, , 3F
等等,c真的是這樣解的喔?
01/20 15:04, 3F

01/20 15:06, , 4F
等等,我按到噓了..
01/20 15:06, 4F

01/20 15:09, , 5F
為什麼你要把浮點數拿去判斷是否大於0 ??
01/20 15:09, 5F

01/20 15:12, , 6F
1.3, 7.99, 10.45都大於0,且同時也是浮點數喔XD
01/20 15:12, 6F

01/20 15:13, , 7F
x=1.4 → x=0.9 → y=0 你的解法會變成這樣
01/20 15:13, 7F

01/20 15:16, , 9F
L7N大,你提出來的點就是我不解原po為何判斷是否大於0
01/20 15:16, 9F

01/20 15:16, , 10F
的原因
01/20 15:16, 10F

01/20 15:17, , 11F
這是我的測試結果
01/20 15:17, 11F

01/20 15:20, , 12F
我的想法是 假如-1.6四捨五入不是=-2嗎 @@"
01/20 15:20, 12F

01/20 15:20, , 13F
因此傳回整數時會砍掉小數點後的東西
01/20 15:20, 13F

01/20 15:20, , 14F
x=-1.6 y=-2.1去掉小數這樣
01/20 15:20, 14F

01/20 15:21, , 15F
正數 x=2.4 y=2.9 去掉小數 result=2
01/20 15:21, 15F

01/20 15:22, , 16F
原PO的意思是讓浮點數+0.5之後用強轉型成int就達到題目目的啦
01/20 15:22, 16F

01/20 15:22, , 17F
-1.6 四捨五入後到底該是 -1 還是 -2 ,還有爭議
01/20 15:22, 17F

01/20 15:23, , 18F
我覺得這沒有錯啊 還是你當時寫的不一樣?
01/20 15:23, 18F

01/20 15:23, , 19F
另外補充一下,他的意思是四捨五入至整數位!
01/20 15:23, 19F

01/20 15:25, , 20F
我覺得10.45不是浮點數>﹏<
01/20 15:25, 20F

01/20 15:26, , 21F
10.45不是嗎 :(
01/20 15:26, 21F

01/20 15:27, , 22F
其實我也認為應該是沒有錯,很不解不合格的原因 T_T
01/20 15:27, 22F

01/20 15:28, , 23F
或是有我沒顧慮到的地方...
01/20 15:28, 23F

01/20 15:29, , 24F
我跑了結果是正確的啊 這家別去了吧 感覺不大妙
01/20 15:29, 24F

01/20 15:37, , 25F
我用gcc,輸入2.1,2.1+0.5 = 2.6 , y=(int)2.6, 答案=2
01/20 15:37, 25F

01/20 15:38, , 26F
會不會是說C++ 的 int 轉型跟C不一樣呢
01/20 15:38, 26F

01/20 15:39, , 27F
疑,對喔,我耍笨了
01/20 15:39, 27F

01/20 15:40, , 28F
四捨五入是這樣寫的喔
01/20 15:40, 28F

01/20 15:46, , 29F
看起來沒錯阿,怪怪
01/20 15:46, 29F

01/20 16:15, , 30F
http://pastie.org/9842845 跟roundf驗證, 結果一樣
01/20 16:15, 30F

01/20 16:25, , 31F
版上一堆天下的面試文都直接寫出題目了 還會寫錯
01/20 16:25, 31F

01/20 16:29, , 32F
覺得對的,步就會根原PIO一樣上不了XD
01/20 16:29, 32F

01/20 16:35, , 33F
最快速寫法 std::round()
01/20 16:35, 33F

01/20 16:56, , 35F
這間就算過了第一關 後面的試用期才是最大難關
01/20 16:56, 35F

01/20 17:26, , 36F
好吧..看半天真不知寫錯在哪裡...有高手可以指點一下嗎...
01/20 17:26, 36F

01/20 17:37, , 37F
int y = (int)x + (x*2)%2
01/20 17:37, 37F

01/20 18:07, , 38F
看完一整串'/天下'的,好像不是只看答案正不正確來挑人
01/20 18:07, 38F

01/20 18:15, , 39F
推文有指出錯誤了
01/20 18:15, 39F

01/20 19:46, , 40F
沒錯吧,前面推文說有錯的,是學生嗎?
01/20 19:46, 40F

01/20 20:18, , 41F
((int)(sample_arry[i]+0.5)) > ((int)sample_arry[i])?
01/20 20:18, 41F

01/20 20:20, , 42F
(float)(int)(arry[i]+0.5):(float)(int)(arry[i])
01/20 20:20, 42F

01/20 20:22, , 43F
天下就算了...對台中年輕人毫無貢獻,只想用免錢的公司
01/20 20:22, 43F

01/20 21:11, , 44F
c/c++在浮點數rounding規範是implementation defined
01/20 21:11, 44F

01/20 21:46, , 45F
這間這次撐這麼久還沒改名 真是不簡單
01/20 21:46, 45F

01/20 21:56, , 46F
四捨五入這題,只是某本書最開始教int和float,所舉的例子
01/20 21:56, 46F

01/20 21:56, , 47F
(int)(f+0.5)
01/20 21:56, 47F

01/20 21:58, , 48F
原po答案真的錯啊,正整數加0.5,負整數減0.5,上來討論卻
01/20 21:58, 48F

01/20 22:00, , 49F
還沒發現。刷掉確實是個蠻簡便的決定。
01/20 22:00, 49F

01/20 22:00, , 50F
寫錯了,正數加0.5,負數減0.5
01/20 22:00, 50F

01/20 22:07, , 51F
原po 程式不就是 正數加0.5,負數減0.5 ,還是我哪邊眼花看錯
01/20 22:07, 51F

01/20 22:25, , 52F
咦對耶,抱歉講太快了,負數減0.5轉整數也對。這樣應該沒錯
01/20 22:25, 52F

01/20 22:25, , 53F
是我去考才會因為這題被刷掉
01/20 22:25, 53F

01/20 22:33, , 54F
程式碼看不出錯啊,這不是最直接最暴力的解法嗎
01/20 22:33, 54F

01/20 22:35, , 55F
還是他嫌你寫太長?
01/20 22:35, 55F

01/20 23:07, , 56F
@@感謝分享
01/20 23:07, 56F

01/20 23:37, , 57F
我人腦編譯了一下也沒發現有錯
01/20 23:37, 57F

01/21 11:46, , 58F
我覺得這樣寫沒問題啊
01/21 11:46, 58F

01/21 12:10, , 59F
可能面試官的人腦compiler 有加上 -Werror
01/21 12:10, 59F

01/21 12:50, , 60F
其實我也想過是否因為程式碼不夠簡短 感覺太弱之類的...
01/21 12:50, 60F

01/21 12:54, , 61F
另外,感謝所有大大給予小弟的指教和分析 ^_^
01/21 12:54, 61F

01/21 13:07, , 62F
還記得原題目的限制嗎?我記得有不可以用轉型?
01/21 13:07, 62F

01/21 13:10, , 63F
0丟進去就錯了阿,這不是最基本的嗎
01/21 13:10, 63F

01/21 13:24, , 64F
樓上找到盲點了XD
01/21 13:24, 64F

01/21 13:27, , 65F
原poIF(X>=0)這邊把=拿掉應該就對了吧!!
01/21 13:27, 65F

01/21 13:34, , 66F
樓上,小弟用VC++6.0實作,0丟進去沒錯呀!
01/21 13:34, 66F

01/21 13:54, , 67F
應該是想看到你用round, 只要自幹就是錯了
01/21 13:54, 67F

01/21 14:31, , 68F
(int)0.5 是 0 吧!
01/21 14:31, 68F

01/21 17:24, , 69F
好多推文都預設立場是原po寫錯,最後也沒人能真的指
01/21 17:24, 69F

01/21 17:24, , 70F
出錯在哪裡…
01/21 17:24, 70F

01/21 21:07, , 71F
上面幾個推文的...
01/21 21:07, 71F

01/22 14:30, , 72F
int的長度比float短吧,直接轉的話值沒問題嗎?
01/22 14:30, 72F

01/22 16:24, , 73F
太拖泥帶水了,不過沒上也不見得是壞事
01/22 16:24, 73F

01/26 09:54, , 74F
解法沒錯 上面推文很多問題
01/26 09:54, 74F

01/27 16:17, , 75F
應該是想看到你用round, 只要自幹就是錯了 這個好笑XD
01/27 16:17, 75F

02/13 08:21, , 76F
X=x+0.5f; 不用謝我了 XD
02/13 08:21, 76F

06/01 20:16, , 77F
說真的沒進去 你真的要覺得幸運!
06/01 20:16, 77F

07/20 17:29, , 78F
如果帶個X=2.4999999 你會發現你的答案是錯的
07/20 17:29, 78F
文章代碼(AID): #1KlVm2s8 (Soft_Job)
文章代碼(AID): #1KlVm2s8 (Soft_Job)