Tags:

ผมกำลังหาโปรแกรมเมอร์มาช่วยทำงาน

ก็ออกข้อสอบมา 1 ชุด 1 ในนั้นคือการให้เขียน หาคำตอบว่า recursive function ที่ให้ไว้
ถ้าใส่ตัวแปรไปแล้ว จะได้ผลลัพธ์เป็นค่าอะไร และให้เขียน Code จาก Recursive function โดยให้แปลง
โดยใช้ For loop และ While Loop

ทดสอบมา 4-5 คน ปรากฎว่าไม่มีใครทำได้เลย หรือได้ infinity loop กันหมด หรือไม่ส่งเลย
ผลลัพธ์จากตัวหลัก Recursive function ก็ตอบผิด

มันยากไปเหรอครับ เพราะผมก็ทำได้แบบไม่ยากนัก และจำได้ว่าอย่างการหาผลลัพธ์ของ recursive function ก็มีในข้อสอบสอบเข้าเรียนด้วย

Get latest news from Blognone
By: mr_tawan
ContributoriPhoneAndroidWindows
on 19 April 2017 - 13:17 #980263
mr_tawan's picture

อ่านผ่าน ๆ ผมเฉย ๆ แฮะ แต่ถ้าไม่เห็นโจทย์จริง ๆ ผมก็ฟันไม่ได้ครับ 55


  • 9tawan.net บล็อกส่วนตัวฮับ
By: maxlogic on 20 April 2017 - 00:26 #980415 Reply to:980263

ตัว recursive function ทำหน้าที่คำนวณหา factorial ครับ

By: notnull
Android
on 19 April 2017 - 14:37 #980284

สำหรับผม recursive นี่ไม่ใช่ฟังก์ชั่นที่เขียนปกติในชีวิตประจำวันนะ นานๆจะเขียนซักที ถ้าให้กระดาษมาแล้วทำตรงนั้นเลย ผมว่าก็คิดหนัก ใช้เวลานานอยู่ ถ้าเขียนในคอมก็ต้องใช้เวลาเขียนแล้วทดสอบพอสมควร

ความเห็นส่วนตัวผมว่า ลองเปลี่ยนเป็นหาโปรแกรมเมอร์มาทำงานอะไร ให้เค้าทดสอบด้วยงานนั้นๆมั้ยครับ เช่น ถ้าหา frontend ก็เอาดีไซน์หน้าเว็บแบบไม่ต้อง advance มาก ให้เขียนออกมาเป็น html/js/css หรือถ้าหา backend/database ก็ลองให้เขียนโค้ท/sql สร้าง/ดึงข้อมูล/ค้นหา พวกนี้ถ้าคนทำงานอยู่ปกติน่าจะทำได้ภายใน 1-3 ชั่วโมงครับ

By: thanyadol
iPhone
on 19 April 2017 - 22:42 #980401 Reply to:980284

เขาน่าจะให้ฟังชันก์ที่ recursive ได้ แล้วให้เขียนแบบไม่ recursive (loop) แทนหรือป่าวรครับ เช่น factorial

By: maxlogic on 20 April 2017 - 00:27 #980416 Reply to:980401

ถูกต้องครับ หาค่า factorial ครับ

By: maxlogic on 20 April 2017 - 00:33 #980417 Reply to:980284

ไม่ได้ให้เขียน recursive function ครับ เพราะมันอาจจะใช้เวลาเยอะไป
อันนี้คือให้แปลงเป็น for กับ while ครับ เพื่ออยากจะทดสอบพื้นฐาน programming ครับ

เรื่องทำสอบด้วยงาน อันนี้ก็มีทดสอบครับ ให้ทำหน้ากับเครื่อง pc ที่จะให้เวลานานหน่อย เปิดเน็ต ค้น google ได้
ปัญหาคือ พอทำแบบนี้ บ้างคนไปค้น google มาเอาแปะเลย มันก็ได้ผลลัพธ์บ้างส่วน (ลองรับเข้ามาปรากฎว่าพื้นฐานไม่แน่น)

แต่ไม่ค่อยเห็นพื้นฐานเท่าไหร่ เลยคิดข้อสอบชุดข้างต้นมาทดสอบพื้นฐาน

By: hisoft
ContributorWindows PhoneWindows
on 20 April 2017 - 10:19 #980466 Reply to:980284
hisoft's picture

คือไม่ใช่ฟังก์ชันที่ใช้กันบ่อยๆ แต่ถ้าพื้นฐานโอเคมันควรจะอ่านแล้วเข้าใจนะครับ ผมว่ามันออกแนววัดพื้นฐานมากกว่า


The Phantom Thief

ฮือ อัพรูปเป็น gif ไม่ได้ (T-T)

By: Fukuyo on 23 April 2017 - 18:29 #981094 Reply to:980284

กำ recursive นี่ไม่ใช่เขียนกันปรกติตอน fetching พวก JSON แล้วแปรรูปไปเป็น data model หรือครับ ???


อืมนะ

By: Pearseak on 25 April 2017 - 14:28 #981378 Reply to:981094

ปกติเวลาผม fetch JSON มามันก็มี function หรือ method ให้แปลงเป็น Object ทุกภาษาอยู่แล้วไม่ใช่เหรอครับแล้ว recursive โผล่มาตอนไหนอ่ะ งงจริงนะเนี่ยหรือผมอ่านอะไรเข้าใจผิดไป

By: thanyadol
iPhone
on 25 April 2017 - 16:02 #981392 Reply to:981094

ถ้าเป็นเวบเทคโนโลยีในปัจจุบันมีเฟรมเวิคช่วย serialize ทั้งฝั่ง client และ server เกือบหมดแล้วนะครับ

By: Pearseak on 25 April 2017 - 14:25 #981377

สำหรับผมการแปลง recursive เป็น loop ถือว่าง่ายครับน่าจะไม่น่าเกิน 30 นาที
ในทางกลับกันให้แปลง loop เป็น recursive นี่ยากชิบหัยขอสองวันได้มั้ย

ผมว่าปัญหาอาจจะไม่ได้อยู่ที่การแปลง recursive เป็น loop
แต่มันอาจจะอยู่ที่ว่าเขามองไม่ออกตั้งแต่แรกว่า recursive มันทำอะไรรึเปล่าครับ
พอมองไม่ออกก็แปลงไม่ได้อยู่แล้วอาจจะลองเปลี่ยนจาก factorial เป็นวนลบเลขจนเหลือ 0
อะไรทำนองนี้อาจจะเข้าใจง่ายขึ้น แต่อาจจะง่ายไปอีกรึเปล่า?

แต่อาจจะเป็นปัญหาที่ตัวคนสมัครเองก็ได้ครับอาจจะให้ค่าตอบแทนต่ำไปรึเปล่าคนที่เก่งๆเลยไม่ค่อยสนใจสมัคร
เพราะเอาจริงๆต่อให้แปลงไม่ออกมันก็ไม่น่าจะถึงขั้นติด infinite loop นะ..

By: maxlogic on 27 April 2017 - 03:12 #981695 Reply to:981377

"แต่มันอาจจะอยู่ที่ว่าเขามองไม่ออกตั้งแต่แรกว่า recursive มันทำอะไรรึเปล่าครับ"
น่าจะใช่ครับ

ค่าตอบแทนที่ให้คือ 20,000-25,000 บาทครับ
ซึ่งก็ไม่คิดว่าจะต้องเก่งมากนะครับ ทีวัดนี่ผมก็ว่ามันพื้นฐานมาก ๆ นี่กะว่าเอาคนแบบไม่มีประสบการณ์
หรือมีซัก 1 ปีมาทำครับ (ล่าสุดคือประสบการณ์ 2 ปี ก็ทำไม่ได้ครับ -_-')

By: mr_tawan
ContributoriPhoneAndroidWindows
on 27 April 2017 - 15:15 #981789 Reply to:981695
mr_tawan's picture

อย่าคิดมากครับ

ผมเจอทำแค่ หาว่าจุดอยู่ในสี่เหลี่ยมหรือเปล่า ไม่ได้เยอะมากครับ (สิบปีที่แล้ว)


  • 9tawan.net บล็อกส่วนตัวฮับ