การเรียนรู้การเขียนโค้ดไม่ใช่แค่การอ่านบทเรียน—มันคือการลงมือทำและฝึกฝน ในโพสต์นี้เราจะไปผ่าน 20 แบบฝึกหัดง่าย ๆ ที่เหมาะสำหรับผู้เริ่มต้น แต่ละแบบมีตัวอย่างและวิธีแก้ปัญหาด้วย Python เพื่อให้คุณได้ลองทำทันที
1. พิมพ์ “Hello, World!”
สิ่งที่แบบฝึกหัดต้องการ: เขียนโปรแกรมที่ง่ายที่สุดที่แสดงข้อความบนหน้าจอ นี่จะแสดงให้เห็นว่าคุณสามารถรันโค้ดและได้รับผลลัพธ์ที่มองเห็นได้
สิ่งที่คุณจะใช้: ฟังก์ชัน print() — ไม่มีข้อมูลนำเข้า แค่ผลลัพธ์
ตัวอย่างผลลัพธ์
Hello, World!
วิธีแก้ปัญหาด้วย Python
print("Hello, World!")
2. เครื่องคิดเลขง่าย ๆ
สิ่งที่แบบฝึกหัดต้องการ: รับตัวเลขสองตัวจากผู้ใช้และคำนวณผลรวม, ผลต่าง, ผลคูณ, และผลหาร นี่จะสอนคุณเกี่ยวกับการจัดการข้อมูลนำเข้าและคณิตศาสตร์พื้นฐาน
สิ่งที่คุณจะใช้: input() เพื่อรับตัวเลข, float() เพื่อแปลง, ตัวดำเนินการทางคณิตศาสตร์ (+ - * /), และ print() สำหรับผลลัพธ์
ตัวอย่างข้อมูลนำเข้า
8
2
ตัวอย่างผลลัพธ์
Addition: 10.0
Subtraction: 6.0
Multiplication: 16.0
Division: 4.0
วิธีแก้ปัญหาด้วย Python
a = float(input("Enter first number: ").strip())
b = float(input("Enter second number: ").strip())
print("Addition:", a + b)
print("Subtraction:", a - b)
print("Multiplication:", a * b)
print("Division:", a / b if b != 0 else "Infinity")
3. ตรวจสอบเลขคู่หรือเลขคี่
สิ่งที่แบบฝึกหัดต้องการ: ตัดสินใจว่าเลขจำนวนเต็มเป็นเลขคู่หรือเลขคี่
สิ่งที่คุณจะใช้: modulo %, การแสดงออกตามเงื่อนไข
ตัวอย่างข้อมูลนำเข้า
7 is odd
ตัวอย่างผลลัพธ์
7 is odd
Python
n = int(input().strip())
print(f"{n} is {'even' if n % 2 == 0 else 'odd'}")
4. เกมทายหมายเลข
สิ่งที่แบบฝึกหัดต้องการ: คอมพิวเตอร์สุ่มหมายเลข; ผู้ใช้จะต้องทายจนกว่าจะถูก พร้อมคำใบ้สูง/ต่ำ
สิ่งที่คุณจะใช้: random.randint(), while loop, if/elif/else
ตัวอย่างการรัน
Guess (1-10): 5
Too low
Guess (1-10): 8
Correct!
วิธีแก้ปัญหาด้วย Python
import random
secret = random.randint(1, 10)
while True:
g = int(input("Guess (1-10): ") or 0)
if g < secret:
print("Too low")
elif g > secret:
print("Too high")
else:
print("Correct!")
break
5. ตารางการคูณ
สิ่งที่แบบฝึกหัดต้องการ: พิมพ์ตารางการคูณ 1–10 สำหรับหมายเลขที่กำหนด
สิ่งที่คุณจะใช้: for loop, f-strings
ตัวอย่างข้อมูลนำเข้า
3
ตัวอย่างผลลัพธ์
3 x 1 = 3
...
3 x 10 = 30
วิธีแก้ปัญหาด้วย Python
n = int(input().strip())
for i in range(1, 11):
print(f"{n} x {i} = {n*i}")
6. ตรวจสอบ Palindrome
สิ่งที่แบบฝึกหัดต้องการ: ตรวจสอบว่าข้อความอ่านเหมือนกันทั้งจากด้านหน้าและด้านหลัง (ไม่สนใจตัวพิมพ์ใหญ่/เล็กและช่องว่าง/เครื่องหมายวรรคตอน)
สิ่งที่คุณจะใช้: การทำความสะอาดสตริง, .lower(), slicing [::-1]
ตัวอย่างข้อมูลนำเข้า
RaceCar
ตัวอย่างผลลัพธ์
RaceCar is a palindrome
วิธีแก้ปัญหาด้วย Python
s = input().strip()
clean = ''.join(ch.lower() for ch in s if ch.isalnum())
print(f"{s} is {'a palindrome' if clean == clean[::-1] else 'not a palindrome'}")
7. ลำดับ Fibonacci
สิ่งที่แบบฝึกหัดต้องการ: พิมพ์หมายเลข Fibonacci แรก n ตัว
สิ่งที่คุณจะใช้: ตัวแปรเพื่อติดตามค่าล่าสุดสองค่า, for loop, list join
ตัวอย่างข้อมูลนำเข้า
6
ตัวอย่างผลลัพธ์
0 1 1 2 3 5
วิธีแก้ปัญหาด้วย Python
n = int(input().strip())
a, b = 0, 1
seq = []
for _ in range(n):
seq.append(str(a))
a, b = b, a + b
print(' '.join(seq))
8. เครื่องคิดเลข Factorial
สิ่งที่แบบฝึกหัดต้องการ: คำนวณ n! (ผลคูณของ 1..n)
สิ่งที่คุณจะใช้: การคูณใน for loop (หรือการเรียกซ้ำ)
ตัวอย่างข้อมูลนำเข้า
5
ตัวอย่างผลลัพธ์
120
วิธีแก้ปัญหาด้วย Python
n = int(input().strip())
f = 1
for i in range(2, n+1):
f *= i
print(f)
9. นับจำนวนคำ
สิ่งที่แบบฝึกหัดต้องการ: นับว่ามีคำกี่คำในประโยค
สิ่งที่คุณจะใช้: str.split(), len()
ตัวอย่างข้อมูลนำเข้า
I love programming
ตัวอย่างผลลัพธ์
3
วิธีแก้ปัญหาด้วย Python
s = input().strip()
print(len(s.split()))
10. รายการสิ่งที่ต้องทำ (Mini CLI)
สิ่งที่แบบฝึกหัดต้องการ: เพิ่ม, ดู, และลบงานในเมนูที่วนลูปง่าย ๆ
สิ่งที่คุณจะใช้: lists, while loop, if/elif/else
ตัวอย่างการรัน
1
Finish homework
2
1 Finish homework
วิธีแก้ปัญหาด้วย Python
tasks = []
while True:
print("1) Add 2) View 3) Remove 4) Exit")
c = input("> ").strip()
if c == "1":
tasks.append(input("Task: ").strip()); print("Added.")
elif c == "2":
if tasks:
for i, t in enumerate(tasks, 1):
print(i, t)
else:
print("No tasks.")
elif c == "3":
i = int(input("Index: ") or 0)
if 1 <= i <= len(tasks):
tasks.pop(i-1); print("Removed.")
else:
print("Invalid index.")
elif c == "4":
break
else:
print("Try 1-4.")
11. กลับคำ
สิ่งที่แบบฝึกหัดต้องการ: แสดงผลเวอร์ชันที่กลับด้านของข้อความที่ป้อน
สิ่งที่คุณจะใช้: slicing [::-1]
ตัวอย่างข้อมูลนำเข้า
hello
ตัวอย่างผลลัพธ์
olleh
วิธีแก้ปัญหาด้วย Python
print(input().strip()[::-1])
12. เลขที่ใหญ่ที่สุดในสามหมายเลข
สิ่งที่แบบฝึกหัดต้องการ: อ่านหมายเลขสามตัวและพิมพ์หมายเลขที่ใหญ่ที่สุด
สิ่งที่คุณจะใช้: input().split(), map(), max()
ตัวอย่างข้อมูลนำเข้า
4 9 2
ตัวอย่างผลลัพธ์
9
วิธีแก้ปัญหาด้วย Python
a, b, c = map(float, input().split())
print(max(a, b, c))
13. ตัวแปลงอุณหภูมิ (C ↔ F)
สิ่งที่แบบฝึกหัดต้องการ: แปลงเซลเซียสเป็นฟาเรนไฮต์หรือในทางกลับกันตามคำนำหน้าสเกล
สิ่งที่คุณจะใช้: เงื่อนไข, คณิตศาสตร์
ตัวอย่างข้อมูลนำเข้า
C 25
ตัวอย่างผลลัพธ์
77.0
วิธีแก้ปัญหาด้วย Python
scale, val = input().split()
x = float(val)
print(x * 9/5 + 32 if scale.upper() == 'C' else (x - 32) * 5/9)
14. ดอกเบี้ยง่าย
สิ่งที่แบบฝึกหัดต้องการ: คำนวณดอกเบี้ยง่ายโดยใช้ P, R, T
สิ่งที่คุณจะใช้: map(float, ...), สูตรคณิตศาสตร์ P*R*T/100
ตัวอย่างข้อมูลนำเข้า
1000 5 2
ตัวอย่างผลลัพธ์
100.0
วิธีแก้ปัญหาด้วย Python
P, R, T = map(float, input().split())
print(P * R * T / 100)
15. ตรวจสอบหมายเลขเฉพาะ
สิ่งที่แบบฝึกหัดต้องการ: บอกว่า n เป็นหมายเลขเฉพาะหรือไม่
สิ่งที่คุณจะใช้: ลูปจนถึง √n, หยุดก่อนเมื่อเจอตัวหาร
ตัวอย่างข้อมูลนำเข้า
13
ตัวอย่างผลลัพธ์
prime
วิธีแก้ปัญหาด้วย Python
n = int(input().strip())
if n < 2:
print("not prime")
else:
i, ok = 2, True
while i*i <= n:
if n % i == 0:
ok = False; break
i += 1
print("prime" if ok else "not prime")
16. ผลรวมของตัวเลข
สิ่งที่แบบฝึกหัดต้องการ: รวมตัวอักษรตัวเลขทั้งหมดในข้อมูลนำเข้า
สิ่งที่คุณจะใช้: generator expression บนสตริง, sum()
ตัวอย่างข้อมูลนำเข้า
1234
ตัวอย่างผลลัพธ์
10
วิธีแก้ปัญหาด้วย Python
s = input().strip()
print(sum(int(ch) for ch in s if ch.isdigit()))
17. นับสระ
สิ่งที่แบบฝึกหัดต้องการ: นับว่ามีสระกี่ตัวในข้อความที่ป้อน
สิ่งที่คุณจะใช้: .lower(), การตรวจสอบสมาชิกด้วย set
ตัวอย่างข้อมูลนำเข้า
programming
ตัวอย่างผลลัพธ์
3
วิธีแก้ปัญหาด้วย Python
s = input().lower()
vowels = set('aeiou')
print(sum(ch in vowels for ch in s))
18. เกมหิน–กระดาษ–กรรไกร
สิ่งที่แบบฝึกหัดต้องการ: เล่นหนึ่งรอบกับคอมพิวเตอร์และรายงานผลชนะ/แพ้/เสมอ
สิ่งที่คุณจะใช้: random.choice(), กฎการชนะแบบ tuple, if/elif
ตัวอย่างการรัน
rock
Computer chose: scissors
You win!
วิธีแก้ปัญหาด้วย Python
import random
user = input("rock/paper/scissors: ").strip().lower()
cpu = random.choice(["rock", "paper", "scissors"])
print("Computer chose:", cpu)
if user == cpu:
print("Tie!")
elif (user, cpu) in {("rock","scissors"), ("paper","rock"), ("scissors","paper")}:
print("You win!")
else:
print("You lose!")
19. ค่าต่ำสุด & ค่าสูงสุดในรายการ
สิ่งที่แบบฝึกหัดต้องการ: อ่านตัวเลขในบรรทัดเดียวและพิมพ์ค่าต่ำสุดและค่าสูงสุด
สิ่งที่คุณจะใช้: split(), map(float), min(), max()
ตัวอย่างข้อมูลนำเข้า
5 9 1 7 3
ตัวอย่างผลลัพธ์
1 9
วิธีแก้ปัญหาด้วย Python
nums = list(map(float, input().split()))
print(min(nums), max(nums))
20. ตัวตรวจสอบรหัสผ่านพื้นฐาน
สิ่งที่แบบฝึกหัดต้องการ: ตรวจสอบรหัสผ่าน: ความยาว ≥ 8, มีอย่างน้อยหนึ่งตัวอักษรและหนึ่งตัวเลข
สิ่งที่คุณจะใช้: len(), any(), .isalpha(), .isdigit(), ตรรกะ boolean
ตัวอย่างข้อมูลนำเข้า
Hello123
ตัวอย่างผลลัพธ์
valid
วิธีแก้ปัญหาด้วย Python
pw = input().strip()
ok = (len(pw) >= 8 and any(ch.isalpha() for ch in pw) and any(ch.isdigit() for ch in pw))
print("valid" if ok else "invalid")