บทที่ 8: การสร้างโปรแกรมขนาดเล็ก
8.1 การรวมความรู้ทั้งหมดเพื่อสร้างโปรแกรมขนาดเล็ก (เช่น เครื่องคิดเลข, เกมทายเลข)
หลังจากที่เราได้เรียนรู้เกี่ยวกับการใช้งานตัวแปร, ลูป, เงื่อนไข, ฟังก์ชัน, และการจัดการไฟล์ใน Python แล้ว ในบทนี้เราจะนำความรู้ทั้งหมดมารวมกันเพื่อสร้างโปรแกรมขนาดเล็กที่สามารถทำงานได้จริง ซึ่งเป็นโอกาสดีที่จะฝึกฝนการเขียนโปรแกรมด้วยการพัฒนาโปรแกรมอย่างเต็มรูปแบบ
1. การสร้างเครื่องคิดเลข (Calculator)
เครื่องคิดเลขเป็นโปรแกรมที่ง่ายและใช้พื้นฐานของการรับข้อมูลจากผู้ใช้ (input), การใช้เงื่อนไข (if-elif-else), และฟังก์ชัน (functions) ในการคำนวณทางคณิตศาสตร์
ขั้นตอนในการพัฒนาโปรแกรมเครื่องคิดเลข
- รับข้อมูลจากผู้ใช้ว่าต้องการดำเนินการทางคณิตศาสตร์ใด (บวก, ลบ, คูณ, หาร)
- รับตัวเลขสองตัวจากผู้ใช้
- ใช้เงื่อนไขเพื่อตรวจสอบว่าผู้ใช้เลือกการดำเนินการใดและคำนวณผลลัพธ์
- แสดงผลลัพธ์
ตัวอย่างโปรแกรมเครื่องคิดเลข
# ฟังก์ชันสำหรับการบวก
def add(x, y):
return x + y
# ฟังก์ชันสำหรับการลบ
def subtract(x, y):
return x - y
# ฟังก์ชันสำหรับการคูณ
def multiply(x, y):
return x * y
# ฟังก์ชันสำหรับการหาร
def divide(x, y):
if y == 0:
return "Error: Division by zero"
return x / y
# แสดงตัวเลือกการดำเนินการ
print("Select operation:")
print("1. Add")
print("2. Subtract")
print("3. Multiply")
print("4. Divide")
# รับข้อมูลจากผู้ใช้
choice = input("Enter choice (1/2/3/4): ")
# รับตัวเลขสองตัวจากผู้ใช้
num1 = float(input("Enter first number: "))
num2 = float(input("Enter second number: "))
# ใช้เงื่อนไขเพื่อตรวจสอบการดำเนินการที่เลือก
if choice == '1':
print("Result:", add(num1, num2))
elif choice == '2':
print("Result:", subtract(num1, num2))
elif choice == '3':
print("Result:", multiply(num1, num2))
elif choice == '4':
print("Result:", divide(num1, num2))
else:
print("Invalid input")
อธิบาย: โปรแกรมนี้ใช้ฟังก์ชันเพื่อทำการคำนวณทางคณิตศาสตร์ และใช้เงื่อนไขเพื่อตรวจสอบว่าผู้ใช้เลือกการดำเนินการใด โดยโปรแกรมจะทำการคำนวณและแสดงผลลัพธ์ตามที่ผู้ใช้เลือก
2. การสร้างเกมทายเลข (Number Guessing Game)
เกมทายเลขเป็นโปรแกรมที่ใช้ลูป, เงื่อนไข, และฟังก์ชันในการพัฒนา โดยผู้ใช้ต้องทายเลขที่สุ่มจากระบบและพยายามเดาให้ถูกต้อง
ขั้นตอนในการพัฒนาเกมทายเลข
- สุ่มตัวเลขจากระบบในช่วงที่กำหนด
- รับค่าที่ผู้ใช้ทาย
- เปรียบเทียบค่าที่ทายกับเลขที่สุ่ม
- บอกผู้ใช้ว่าค่าที่ทายถูกต้องหรือไม่ หรือให้คำแนะนำว่าเลขมากหรือน้อยเกินไป
- ทำซ้ำจนกว่าผู้ใช้จะทายถูก
ตัวอย่างเกมทายเลข
import random
# สุ่มตัวเลขจาก 1 ถึง 100
number_to_guess = random.randint(1, 100)
# จำนวนครั้งในการทาย
attempts = 0
print("I'm thinking of a number between 1 and 100. Try to guess it!")
# วนลูปจนกว่าผู้ใช้จะทายถูก
while True:
guess = int(input("Enter your guess: "))
attempts += 1
if guess < number_to_guess:
print("Too low!")
elif guess > number_to_guess:
print("Too high!")
else:
print(f"Congratulations! You guessed the number in {attempts} attempts.")
break
อธิบาย: โปรแกรมนี้สุ่มตัวเลขจาก 1 ถึง 100 และให้ผู้ใช้ทายตัวเลข เมื่อผู้ใช้ทาย ระบบจะบอกว่าตัวเลขที่ทายนั้นสูงหรือต่ำเกินไป และจะวนลูปต่อไปจนกว่าผู้ใช้จะทายถูก
การใช้ฟังก์ชันและการจัดการลูปเพื่อประมวลผลในโปรแกรมขนาดเล็ก
ทั้งเครื่องคิดเลขและเกมทายเลขใช้ฟังก์ชันในการจัดการงานย่อย ๆ เช่น การคำนวณหรือการตรวจสอบความถูกต้อง ฟังก์ชันเหล่านี้ช่วยให้โค้ดมีความยืดหยุ่นและนำกลับมาใช้ซ้ำได้ การใช้ลูปและเงื่อนไขช่วยให้โปรแกรมสามารถทำงานซ้ำตามที่ต้องการได้ ซึ่งเป็นพื้นฐานในการสร้างโปรแกรมที่ซับซ้อนมากขึ้น
สรุป
การรวมความรู้ที่ได้เรียนรู้จาก Python มาสร้างโปรแกรมขนาดเล็กเป็นขั้นตอนสำคัญในการฝึกฝนและเข้าใจการเขียนโปรแกรมมากขึ้น โปรแกรมเช่นเครื่องคิดเลขหรือเกมทายเลขใช้ฟังก์ชัน, ลูป, เงื่อนไข, และการรับข้อมูลจากผู้ใช้เป็นส่วนสำคัญ ซึ่งเป็นพื้นฐานในการพัฒนาโปรแกรมที่ซับซ้อนกว่าในอนาคต