Blockdit Logo
Blockdit Logo (Mobile)
สำรวจ
ลงทุน
คำถาม
เข้าสู่ระบบ
มีบัญชีอยู่แล้ว?
เข้าสู่ระบบ
หรือ
ลงทะเบียน
เขียนโค๊ดกับมากะปิ
•
ติดตาม
28 พ.ค. 2021 เวลา 13:43 • การศึกษา
การพัฒนาความคิดด้วย flowchart EP.3
สวัสดีครับผู้อ่านทุกท่าน เนื้อหาที่แล้วผมได้พูดถึงหลักการคิดของโปรแกรมที่เราจะเขียนใน flowchart กัน ในวันนี้เราจะได้ทำ flowchart กันสักที จาก 2 EP ที่ยาวนาน โอเคครับ เรามาเริ่มกันเลย เพราะ EP นี้จะยาวมากๆ และ สำหรับใครที่ยังไม่เคยอ่าน2 บทความก่อนแนะนำให้กลับไปอ่านก่อนนะครับจะได้เข้าใจเนื้อหาง่ายขึ้นครับ
ขั้นตอนที่ 1: จะเป็นการรับค่า และ การตั้งเงื่อนไขของการรับค่า
ก่อนอื่นเลยครับเราจะมาสร้าง input กันก่อนครับโดยเริ่มจากเงินเริ่มต้นในเดือนแรก ในที่นี้ผมจะตั้งตัวแปรว่า moneyOnFirstMonth นะครับ และจะเขียน input ว่า “input money on First month” (ใส่จำนวนเงินในเดือนแรก)
สร้างตัวแปรเป็น moneyOnFirstMonth โดยทำหน้าที่รับinput จาก keyboard
ทีนี้จำ Case ที่ผมบอกได้ไหมครับว่าเราต้องเผื่อ case ที่ข้อมูลที่รับมาเป็นค่าติดลบ และ ค่าของเดือนต้องอยู่ในช่วง 1 – 12
ถ้าหากว่าไม่ตรงตามเงื่อนไขให้ทำซ้ำ การทำซ้ำแบบนี้เราต้องใช้ loop มาช่วย
โดยหลักการทำงานของ loop ก็คือว่าถ้าเงื่อนไขตรงกับที่เราวางไว้ก็จะทำงานต่อแต่ถ้าไม่ตรงตามเงื่อนไขก็จะกลับไปทำที่เดิม
ให้ลองdouble – click ที่ สี่เหลี่ยมข้าวหลามตัดแนวนอนเพื่อสร้างเงื่อนไขโดยที่ เงื่อนไขของเงินตั้งต้นนั้นต้องมีค่าเป็น บวกและสามารถมีค่าได้มากกว่าหรือเท่ากับ 0
ทีนี้ถ้าเราไม่สร้าง input ใน loopที่ไม่ตรงเงื่อนไข มันจะทำให้เกิด loop อนันต์ได้เนื่องจากค่าที่เรารับ มาไม่มีการเปลี่ยนแปลงดังนั้นเราจะใส่ input ไปตรงเงื่อนไขที่เป็น No ด้วยแบบนี้
ในส่วน input ของ เงินที่จะเพิ่มก็ทำเหมือนกัน โดยที่นี้ ผมตั้งชื่อตัวแปรว่า save และ มีการใส่ข้อความเป็น "Input money you want to save on each month" โดยเงื่อนไขของ input save นั้นจะเหมือนกับ moneyOnFirstMonth ครับ
ในส่วนของ month ก็ทำเหมือนกันครับแต่แค่เงื่อนไขต่างกันตรงที่ว่า month นั้นจะต้องอยู่ระหว่าง 1 – 12 จะตั้งเงื่อนไขเป็น month >= 1 and month <= 12 ดังรูปเลยครับ
ขั้นตอนที่ 2 : จะเป็นการใช้หลักคณิตศาสตร์เข้ามาทำงานเพื่อให้เกิดผลลัพธ์ที่ต้องการ
ทีนี้พอเราได้ค่าข้อมูลครบแล้วก็ให้ใส่ตามสูตรเลยครับเพียงแต่เปลี่ยนตัวแปร
โดยสูตรเป็น
an = a1+(n-1)*d
เป็น
Ans = moneyOnFirstMoth + ((month-1)*save) โดย Ans คือ ผลลัพธ์ครับ
โดยเราจะใช้ สัญลักษณ์ Assignment โดยตรง set จะเป็นชื่อตัวแปรที่เราต้องการเก็บผลลัพธ์ไว้ ส่วน to จะเป็นการคำนวณครับ ตามตัวอย่างเลย
set จะเป็นชื่อตัวแปรที่เราต้องการเก็บผลลัพธ์ไว้ ส่วน to จะเป็นการคำนวณครับ ตามตัวอย่างเลย
ขั้นตอนที่ 3 : การสร้างเงื่อนไขสำหรับผลลัพธ์จากขั้นตอนที่ 2
เราต้องสร้างเงื่อนไข โดยใช้ selection สำหรับเช็คว่า ผลลัพธ์นั้นมีค่ามากกว่า 2 เท่าของ moneyOnFirstMonth ไหม โดยเงื่อนไขจะเป็น ANS > (moneyOnFirstMonth*2)
ถ้าตรงเงื่อนไขก็ให้เพิ่มอีก 500 ถ้าไม่ตรงให้แสดงผลลัพธ์เลย โดยในที่นี้เราสามารถใช้ output แสดง ANS พร้อม + 500 ไปได้เลยครับ
ขั้นตอนที่ 5 : ลองรันโปรแกรม
ตอนแรกจะขึ้นเป็นให้เราใส่เงินต้นไว้ก่อน ถ้าเรากรอกตัวเลขที่ไม่ตรงเงื่อนไขมันจะให้เราทำเหมือนเดิม ในกรณีนี้ตรงเงื่อนไข
ก็จะหลุด loop และทำคำสั่งถัดไป
เมื่อใส่ข้อมูลและตรงตามเงื่อนไขแล้ว ก็จะเป็นการรับค่าของเงินเก็บในแต่ละเดือน ในที่นี้ผมจะใส่ 500 ไป ซึ่งจะตรงเงื่อนไข
หลังจากผ่านเงื่อนไขแล้วจะเป็นการรับค่าของเดือน
คราวนี้ผมจะใส่ เดือนเป็น 13 เดือนซึ่งจะไม่ตรงเงื่อนไข แล้ว loop จะวนให้ผมใส่ข้อมูลใหม่แบบนี้
ไม่ตรงตามเงื่อนไขให้ใส่ข้อมูลใหม่
คราวนี้ผมจะใส่ เลข4 ซึ่งตรงเงื่อนไข
ทีนี้พอตรงเงื่อนไขก็จะทำคำสั่งถัดไปจนถึงการวัดเงื่อนไขว่าผลลัพธ์นั้นมีค่ามากกว่าเป็น 2 เท่าของเงินต้นไหมซึ่งในทีนี้ไม่ ผลลัพธ์เลยออกมา โดยไม่เพิ่มอีก 500
กรณีผลลัพธ์ออกมาไม่ตรง อาจเกิดขึ้นจาก
- ตั้งเงื่อนไขไม่ตรง
- ชื่อตัวแปรผิด
- ลองเช็คชื่อตัวแปรว่าสะกดถูกต้องไหมบางทีอาจเป็นตัวพิมใหญ่ - เล็ก สลับกัน
ก็จบกันแล้วนะครับกับการพัฒนาความคิดด้วย flowchart ในส่วนนี้ถ้าสมมติลองทำแล้วเล่นไปเล่นมา แล้วเจอ bug ก็สามารถ comment บอกกันได้นะครับ เผื่อเจอ case ที่ผมคิดไม่ถึง (ฮาๆ) ส่วนถ้ามีข้อผิดพลาดทั้งเขียนไม่เข้าใจ เขียนคำผิด ก็ขออภัย ณ ที่นี้ด้วยนะครับ หรือ จะ comment แนะนำ หรือ ถามคำถาม ก็ได้เหมือนกันครับ สำหรับครั้งหน้าจะเป็นไรนั้นรอติดตามกันด้วยนะครับ
บันทึก
ดูเพิ่มเติมในซีรีส์
การพัฒนาความคิดด้วย flowchart
โฆษณา
ดาวน์โหลดแอปพลิเคชัน
© 2025 Blockdit
เกี่ยวกับ
ช่วยเหลือ
คำถามที่พบบ่อย
นโยบายการโฆษณาและบูสต์โพสต์
นโยบายความเป็นส่วนตัว
แนวทางการใช้แบรนด์ Blockdit
Blockdit เพื่อธุรกิจ
ไทย