กระบวนการในการออกแบบแนวทางการแก้ปัญหานั้น จะต้องถ่ายทอดความคิดและความเข้าใจไปสู่การนำไปสู่การนำไปปฏิบัติได้ การถ่ายทอดความคิดจะต้องมีจุดเริ่มต้น จุดสิ้นสุด และลำดับก่อนหลังที่ชัดเจน อาจอยู่ในรูปของข้อความที่เรียงกันเป็นลำดับซึ่งเรียกว่า รหัสลำลอง (pseudo code)
รหัสลำลอง เป็นการใช้คำบรรยายอธิบายขั้นตอนอย่างชัดเจนในการแก้ปัญหา หรือการทำงานของโปรแกรม ซึ่งรูปแบบการเขียนจะขึ้นอยู่กับประสบการณ์ และความถนัดของผู้เขียน
ตัวอย่างรหัสลำลอง (Pseudocode)
1. คำนวณผลรวมของสองตัวเลข
เริ่มต้น
รับค่า ตัวเลข1 และ ตัวเลข2
ผลรวม = ตัวเลข1 + ตัวเลข2
แสดงค่า ผลรวม
จบ
2. ตรวจสอบเลขคู่หรือเลขคี่
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข หาร 2 ลงตัว
แสดงว่า "เลขคู่"
ไม่เช่นนั้น
แสดงว่า "เลขคี่"
จบ
3. คำนวณพื้นที่สี่เหลี่ยมผืนผ้า
เริ่มต้น
รับค่า ความยาว และ ความกว้าง
พื้นที่ = ความยาว * ความกว้าง
แสดงค่า พื้นที่
จบ
4. หาค่าต่ำสุดของสองตัวเลข
เริ่มต้น
รับค่า ตัวเลข1 และ ตัวเลข2
ถ้า ตัวเลข1 < ตัวเลข2
แสดงว่า "ตัวเลข1 คือต่ำสุด"
ไม่เช่นนั้น
แสดงว่า "ตัวเลข2 คือต่ำสุด"
จบ
5. แสดงตัวเลข 1 ถึง 10
เริ่มต้น
สำหรับ ตัวนับ = 1 ถึง 10
แสดงค่า ตัวนับ
จบ
6. หาผลบวกของตัวเลข 1 ถึง 10
เริ่มต้น
ผลรวม = 0
สำหรับ ตัวนับ = 1 ถึง 10
ผลรวม = ผลรวม + ตัวนับ
แสดงค่า ผลรวม
จบ
7. ตรวจสอบอายุผู้ใช้งาน
เริ่มต้น
รับค่า อายุ
ถ้า อายุ >= 18
แสดงว่า "คุณเป็นผู้ใหญ่"
ไม่เช่นนั้น
แสดงว่า "คุณยังเป็นเยาวชน"
จบ
8. ตรวจสอบผลสอบผ่านหรือไม่ผ่าน
เริ่มต้น
รับค่า คะแนน
ถ้า คะแนน >= 50
แสดงว่า "สอบผ่าน"
ไม่เช่นนั้น
แสดงว่า "สอบไม่ผ่าน"
จบ
9. หาค่าเฉลี่ยของ 3 ตัวเลข
เริ่มต้น
รับค่า ตัวเลข1, ตัวเลข2, ตัวเลข3
ค่าเฉลี่ย = (ตัวเลข1 + ตัวเลข2 + ตัวเลข3) / 3
แสดงค่า ค่าเฉลี่ย
จบ
10. คำนวณค่าไฟฟ้าตามหน่วยการใช้
เริ่มต้น
รับค่า หน่วยไฟฟ้าที่ใช้
ค่าไฟฟ้า = หน่วยไฟฟ้าที่ใช้ * 5
แสดงค่า ค่าไฟฟ้า
จบ
11. แสดงคำว่า “สวัสดี” 5 ครั้ง
เริ่มต้น
สำหรับ ตัวนับ = 1 ถึง 5
แสดงค่า "สวัสดี"
จบ
12. ตรวจสอบเลขบวกหรือเลขลบ
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข > 0
แสดงว่า "เลขบวก"
ไม่เช่นนั้น ถ้า ตัวเลข < 0
แสดงว่า "เลขลบ"
ไม่เช่นนั้น
แสดงว่า "เลขศูนย์"
จบ
13. คำนวณดัชนีมวลกาย (BMI)
เริ่มต้น
รับค่า น้ำหนัก และ ส่วนสูง
BMI = น้ำหนัก / (ส่วนสูง * ส่วนสูง)
แสดงค่า BMI
จบ
14. วาดสามเหลี่ยมดาว
เริ่มต้น
สำหรับ แถว = 1 ถึง 5
แสดงค่า "*" จำนวน แถว
จบ
15. คำนวณราคาสินค้าพร้อมส่วนลด
เริ่มต้น
รับค่า ราคา และ ส่วนลด
ราคาสุทธิ = ราคา - (ราคา * ส่วนลด / 100)
แสดงค่า ราคาสุทธิ
จบ
16. คำนวณค่าดอกเบี้ยเงินฝาก
เริ่มต้น
รับค่า เงินฝาก และ อัตราดอกเบี้ย
ดอกเบี้ย = เงินฝาก * อัตราดอกเบี้ย / 100
แสดงค่า ดอกเบี้ย
จบ
17. ตรวจสอบปีที่เป็นปีอธิกสุรทิน
เริ่มต้น
รับค่า ปี
ถ้า ปี หาร 4 ลงตัว และ (ปี หาร 100 ไม่ลงตัว หรือ ปี หาร 400 ลงตัว)
แสดงว่า "ปีอธิกสุรทิน"
ไม่เช่นนั้น
แสดงว่า "ไม่ใช่ปีอธิกสุรทิน"
จบ
18. แปลงองศาเซลเซียสเป็นฟาเรนไฮต์
เริ่มต้น
รับค่า องศาเซลเซียส
องศาฟาเรนไฮต์ = (องศาเซลเซียส * 9 / 5) + 32
แสดงค่า องศาฟาเรนไฮต์
จบ
19. แปลงตัวเลขเป็นชื่อเดือน
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข = 1
แสดงว่า "มกราคม"
ถ้า ตัวเลข = 2
แสดงว่า "กุมภาพันธ์"
...
ถ้า ตัวเลข = 12
แสดงว่า "ธันวาคม"
จบ
20. คำนวณคะแนนรวมและหาคะแนนสูงสุด
เริ่มต้น
รับค่า คะแนน1, คะแนน2, คะแนน3
คะแนนรวม = คะแนน1 + คะแนน2 + คะแนน3
คะแนนสูงสุด = ค่าสูงสุดของ (คะแนน1, คะแนน2, คะแนน3)
แสดงค่า คะแนนรวม และ คะแนนสูงสุด
จบ
21. คำนวณราคาหลังเพิ่มภาษีมูลค่าเพิ่ม (VAT)
เริ่มต้น
รับค่า ราคา
ราคาหลังเพิ่ม VAT = ราคา + (ราคา * 7 / 100)
แสดงค่า ราคาหลังเพิ่ม VAT
จบ
22. คำนวณผลคูณของตัวเลข 1 ถึง 10
เริ่มต้น
ผลคูณ = 1
สำหรับ ตัวนับ = 1 ถึง 10
ผลคูณ = ผลคูณ * ตัวนับ
แสดงค่า ผลคูณ
จบ
23. หาค่ามากที่สุดใน 3 ตัวเลข
เริ่มต้น
รับค่า ตัวเลข1, ตัวเลข2, ตัวเลข3
ถ้า ตัวเลข1 >= ตัวเลข2 และ ตัวเลข1 >= ตัวเลข3
แสดงว่า "ค่ามากที่สุดคือ ตัวเลข1"
ถ้า ตัวเลข2 >= ตัวเลข1 และ ตัวเลข2 >= ตัวเลข3
แสดงว่า "ค่ามากที่สุดคือ ตัวเลข2"
ไม่เช่นนั้น
แสดงว่า "ค่ามากที่สุดคือ ตัวเลข3"
จบ
24. ตรวจสอบว่าตัวเลขเป็นจำนวนเฉพาะหรือไม่
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข <= 1
แสดงว่า "ไม่ใช่จำนวนเฉพาะ"
ไม่เช่นนั้น
ตั้งค่า ตัวนับ = 2
ตั้งค่า เป็นจำนวนเฉพาะ = จริง
ในขณะที่ ตัวนับ <= ตัวเลข หาร 2
ถ้า ตัวเลข หาร ตัวนับ ลงตัว
เป็นจำนวนเฉพาะ = เท็จ
ออกจากลูป
เพิ่มค่า ตัวนับ ทีละ 1
ถ้า เป็นจำนวนเฉพาะ = จริง
แสดงว่า "เป็นจำนวนเฉพาะ"
ไม่เช่นนั้น
แสดงว่า "ไม่ใช่จำนวนเฉพาะ"
จบ
25. แสดงตัวเลขที่หารด้วย 3 ได้ลงตัวตั้งแต่ 1 ถึง 100
เริ่มต้น
สำหรับ ตัวนับ = 1 ถึง 100
ถ้า ตัวนับ หาร 3 ลงตัว
แสดงค่า ตัวนับ
จบ
26. คำนวณคะแนนเฉลี่ยและตรวจสอบผลสอบผ่าน
เริ่มต้น
รับค่า คะแนน1, คะแนน2, คะแนน3
ค่าเฉลี่ย = (คะแนน1 + คะแนน2 + คะแนน3) / 3
ถ้า ค่าเฉลี่ย >= 50
แสดงว่า "สอบผ่าน"
ไม่เช่นนั้น
แสดงว่า "สอบไม่ผ่าน"
จบ
27. แปลงค่าความยาวจากเซนติเมตรเป็นเมตร
เริ่มต้น
รับค่า ความยาวเป็นเซนติเมตร
ความยาวเป็นเมตร = ความยาวเป็นเซนติเมตร / 100
แสดงค่า ความยาวเป็นเมตร
จบ
28. นับจำนวนตัวเลขคู่ตั้งแต่ 1 ถึง 50
เริ่มต้น
ตัวนับเลขคู่ = 0
สำหรับ ตัวนับ = 1 ถึง 50
ถ้า ตัวนับ หาร 2 ลงตัว
ตัวนับเลขคู่ = ตัวนับเลขคู่ + 1
แสดงค่า ตัวนับเลขคู่
จบ
29. สร้างลำดับฟีโบนัชชี (Fibonacci Sequence) 10 จำนวนแรก
เริ่มต้น
ตั้งค่า ตัวเลขแรก = 0
ตั้งค่า ตัวเลขที่สอง = 1
แสดงค่า ตัวเลขแรก และ ตัวเลขที่สอง
สำหรับ ตัวนับ = 3 ถึง 10
ตัวเลขถัดไป = ตัวเลขแรก + ตัวเลขที่สอง
แสดงค่า ตัวเลขถัดไป
ตัวเลขแรก = ตัวเลขที่สอง
ตัวเลขที่สอง = ตัวเลขถัดไป
จบ
30. คำนวณผลรวมของตัวเลขในช่วงที่ผู้ใช้กำหนด
เริ่มต้น
รับค่า ตัวเลขเริ่มต้น และ ตัวเลขสิ้นสุด
ผลรวม = 0
สำหรับ ตัวนับ = ตัวเลขเริ่มต้น ถึง ตัวเลขสิ้นสุด
ผลรวม = ผลรวม + ตัวนับ
แสดงค่า ผลรวม
จบ
31. ตรวจสอบว่าอักษรตัวแรกในคำเป็นสระหรือพยัญชนะ
เริ่มต้น
รับค่า คำ
ตัวอักษรแรก = ตัวอักษรตัวแรกของคำ
ถ้า ตัวอักษรแรก เป็น 'a', 'e', 'i', 'o', 'u'
แสดงว่า "เป็นสระ"
ไม่เช่นนั้น
แสดงว่า "เป็นพยัญชนะ"
จบ
32. หาค่าระยะทางจากสูตรคณิตศาสตร์
เริ่มต้น
รับค่า ความเร็ว (v) และ เวลา (t)
ระยะทาง = ความเร็ว * เวลา
แสดงค่า ระยะทาง
จบ
33. คำนวณแรงตามกฎของนิวตัน (F = ma)
เริ่มต้น
รับค่า มวล (m) และ ความเร่ง (a)
แรง = มวล * ความเร่ง
แสดงค่า แรง
จบ
34. นับจำนวนตัวอักษรในคำที่ป้อน
เริ่มต้น
รับค่า คำ
จำนวนตัวอักษร = ความยาวของคำ
แสดงค่า จำนวนตัวอักษร
จบ
35. ตรวจสอบว่าอายุอยู่ในช่วงวัยรุ่นหรือไม่
เริ่มต้น
รับค่า อายุ
ถ้า อายุ >= 13 และ อายุ <= 19
แสดงว่า "อยู่ในช่วงวัยรุ่น"
ไม่เช่นนั้น
แสดงว่า "ไม่ใช่วัยรุ่น"
จบ
36. แสดงตารางสูตรคูณแม่ 7
เริ่มต้น
สำหรับ ตัวนับ = 1 ถึง 12
ผลลัพธ์ = 7 * ตัวนับ
แสดงค่า "7 x", ตัวนับ, "=", ผลลัพธ์
จบ
37. คำนวณพื้นที่วงกลม
เริ่มต้น
รับค่า รัศมี
พื้นที่ = 3.14159 * รัศมี * รัศมี
แสดงค่า พื้นที่
จบ
38. คำนวณค่าปริมาตรของลูกบาศก์
เริ่มต้น
รับค่า ด้านลูกบาศก์
ปริมาตร = ด้านลูกบาศก์ * ด้านลูกบาศก์ * ด้านลูกบาศก์
แสดงค่า ปริมาตร
จบ
39. หาค่าดัชนีการเติบโตของจำนวนประชากร
เริ่มต้น
รับค่า ประชากรเริ่มต้น (P0), อัตราการเติบโต (r), และ เวลา (t)
ประชากรสุดท้าย = P0 * (1 + r) ^ t
แสดงค่า ประชากรสุดท้าย
จบ
40. แปลงค่าความเร็วจากกิโลเมตรต่อชั่วโมงเป็นเมตรต่อวินาที
เริ่มต้น
รับค่า ความเร็ว (km/h)
ความเร็ว (m/s) = ความเร็ว * 1000 / 3600
แสดงค่า ความเร็ว (m/s)
จบ
41. คำนวณเกรดเฉลี่ย
เริ่มต้น
รับค่า คะแนน1, คะแนน2, คะแนน3, คะแนน4
เกรดเฉลี่ย = (คะแนน1 + คะแนน2 + คะแนน3 + คะแนน4) / 4
แสดงค่า เกรดเฉลี่ย
จบ
42. ตรวจสอบจำนวนเต็มหารด้วย 5 และ 7 ลงตัวหรือไม่
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข หาร 5 ลงตัว และ ตัวเลข หาร 7 ลงตัว
แสดงว่า "หาร 5 และ 7 ลงตัว"
ไม่เช่นนั้น
แสดงว่า "หาร 5 และ 7 ไม่ลงตัว"
จบ
43. คำนวณราคาขายจากต้นทุนและกำไร
เริ่มต้น
รับค่า ต้นทุน และ เปอร์เซ็นต์กำไร
ราคาขาย = ต้นทุน + (ต้นทุน * เปอร์เซ็นต์กำไร / 100)
แสดงค่า ราคาขาย
จบ
44. คำนวณค่าความดัน (P = F/A)
เริ่มต้น
รับค่า แรง (F) และ พื้นที่ (A)
ความดัน = แรง / พื้นที่
แสดงค่า ความดัน
จบ
45. ตรวจสอบตัวเลขที่เป็นลำดับเลขโดดเด่น
เริ่มต้น
รับค่า ตัวเลข
ถ้า ตัวเลข เป็น 111 หรือ 222 หรือ 333
แสดงว่า "ตัวเลขเป็นลำดับโดดเด่น"
ไม่เช่นนั้น
แสดงว่า "ตัวเลขไม่ใช่ลำดับโดดเด่น"
จบ
46. แปลงค่าเงินจากบาทเป็นดอลลาร์
เริ่มต้น
รับค่า จำนวนเงิน (บาท)
อัตราแลกเปลี่ยน = 35
จำนวนเงิน (ดอลลาร์) = จำนวนเงิน (บาท) / อัตราแลกเปลี่ยน
แสดงค่า จำนวนเงิน (ดอลลาร์)
จบ
47. คำนวณค่าดาวน์รถยนต์
เริ่มต้น
รับค่า ราคารถยนต์ และ เปอร์เซ็นต์ดาวน์
ค่าดาวน์ = ราคารถยนต์ * เปอร์เซ็นต์ดาวน์ / 100
แสดงค่า ค่าดาวน์
จบ
48. แสดงตัวเลขที่หารด้วย 2 และ 3 ได้ตั้งแต่ 1 ถึง 50
เริ่มต้น
สำหรับ ตัวนับ = 1 ถึง 50
ถ้า ตัวนับ หาร 2 ลงตัว และ ตัวนับ หาร 3 ลงตัว
แสดงค่า ตัวนับ
จบ
49. ตรวจสอบวันในหนึ่งเดือน (30, 31, หรือ 28 วัน)
เริ่มต้น
รับค่า เดือน
ถ้า เดือน = 2
แสดงว่า "28 หรือ 29 วัน"
ถ้า เดือน เป็น 4, 6, 9, 11
แสดงว่า "30 วัน"
ไม่เช่นนั้น
แสดงว่า "31 วัน"
จบ
50. แสดงลำดับตัวเลขย้อนกลับจาก 10 ถึง 1
เริ่มต้น
สำหรับ ตัวนับ = 10 ถึง 1 ลดลงทีละ 1
แสดงค่า ตัวนับ
จบ
การถ่ายทอดความคิดในการแก้ปัญหาในรูปแบบรหัสลำลอง จะต้องมีจุดเริ่มต้น จุดสิ้นสุด และลำดับก่อนหลังที่ชัดเจน เพื่อให้เห็นสิ่งที่ต้องปฏิบัติ ลักษณะการทำงาน และลำดับในการปฏิบัติงาน ซึ่งจะช่วยให้การแก้ปัญหา สามารถดำเนินการตามแผนการที่กำหนดไว้ พัฒนาโปรแกรมได้อย่างถูกต้อง ครบถ้วน และตรวจสอบได้