วันศุกร์ที่ 31 มีนาคม พ.ศ. 2560

การรับค่าผ่านทางหน้าจอ

                สวัสดีค่ะ หลังจากบล็อกที่ผ่านมาเราได้ทำความรู้จักและ ทำความเข้าใจเกี่ยวกับการสร้างเงื่อนไขใน ภาษาRuby มาแล้ว ถ้าอย่างนั้นวันนี้เรามาลองเริ่มจากการรับค่าผ่านทางหน้าจอ ด้วยภาษา Ruby กันดีกว่า
               
การรับค่าผ่านทางหน้าจอด้วยภาษาRuby ประกาศง่ายมากเลย ก่อนอื่นเราต้องทำการประกาศตัวแปรมาตัวแปรนึงเพื่อ ที่จะนำมาเก็บค่า ดูตัวอย่างได้ในรูปด้านล่างนี้เลย



งั้นเรามาลองดูตัวอย่างโปรแกรมง่ายๆกันก่อนเลยดีกว่า
เมื่อเราลองนำโปรแกรมมารัน เราจะได้ผลออกมาแบบนี้


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


       

โจทย์
ให้เขียนโปรแกรมเพื่อรับค่าคะแนนของเด็กนักเรียนผ่านทางหน้าจอ โดยถ้ามีคะแนนมากกว่าหรือเท่ากับ 50 คะแนน ให้ พิมพ์คำว่า
Pass ถ้าคะแนนต่ำกว่า 50 ให้พิมพ์คำว่า Fail

เรามาลองดูFlowchart เพื่อให้เข้าใจได้ง่ายสำหรับการทำงานของโปรแกรมกันก่อนเลยดีกว่า


             จากFlowchart จะเห็นได้ว่าโปรแกรมเริ่มต้นจากแสดงค่าทางหน้าจอถามว่า คะแนนของคุณคืออะไร จากนั้น ก็รับค่าคะแนนที่ได้มา นำมาเช็คเข้าเงื่อนไข ถ้าหากมากกว่าหรือเท่ากับ 50 ให้ทำการแสดงว่า “Pass” แต่ถ้าไม่ ให้แสดงว่า “Fail”
ต่อมา เรามาดูในส่วนของโปรแกรมกันเลยดีกว่า
มาถึงตรงนี้บางคนอาจจะสงสัยว่าในการรับค่า ทำไมเราต้องมีการเพิ่ม .to_i ไปที่ด้านหลังของ gets เนื่องจากการรับข้อมูลจากผู้ใช้ จะเป็นข้อความ (String) เพื่อเปลี่ยนจากข้อความให้เป็นตัวเลขที่เปรียบเทียบได้ จึงต้องใช้คำสั่ง .to_i ซึ่งย่อมาจาก .to_integer 


ผลจากการรันโปรแกรม


เห็นมั้ยคะว่าไม่ยากเลย งั้นเรามาลองทำอีกโจทย์กันเลยดีกว่าก่อนจากกันสำหรับ บล็อคนี้


โจทย์ ให้เขียนโปรแกรม เพื่อรับค่า X แล้วบอกว่าค่า X ที่รับมาเป็นเลขคู่หรือเลขคี่