Python Exercises - Homework
Bài Tập 1: Dãy Số Nhảy Bước (Skip Counting)
Đề bài: Nhập ba số: start, stop, step. In các số từ start đến stop với bước nhảy step.
Problem: Enter three numbers: start, stop, step. Print numbers from start to stop with step increment.
Ví dụ:
Start: 2
Stop: 20
Step: 3Output:
2
5
8
11
14
17
20Bài Tập 2: In Số Lẻ từ 1 đến n (Print Odd Numbers from 1 to n)
Đề bài: Nhập một số n. In tất cả các số lẻ từ 1 đến n.
Problem: Enter a number n. Print all odd numbers from 1 to n.
Ví dụ:
Enter n: 10Output:
1
3
5
7
9Bài Tập 3: Tính n Giai Thừa Bằng Vòng Lặp (Calculate n Factorial with Loop)
Đề bài: Nhập số n. Tính n! (n giai thừa) = 1 × 2 × 3 × ... × n.
Problem: Enter n. Calculate n! (n factorial) = 1 × 2 × 3 × ... × n.
Ví dụ:
Enter n: 5Output:
Factorial: 120Bài Tập 4: In Số Với Prefix (Print Numbers with Prefix)
Đề bài: Nhập số n. In các số từ 1 đến n với prefix 'Number: '.
Problem: Enter n. Print numbers from 1 to n with prefix 'Number: '.
Ví dụ:
Enter n: 5Output:
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5Bài Tập 5: In 'Hello' n Lần (Print 'Hello' n Times)
Đề bài: Nhập số n. In chữ 'Hello' n lần, mỗi lần trên một dòng.
Problem: Enter number n. Print 'Hello' n times, one per line.
Ví dụ:
Enter n: 4Output:
Hello
Hello
Hello
HelloBài Tập 6: Trung Bình Số Dương (Average of Positive Numbers)
Đề bài: Nhập n số nguyên. Tính trung bình CHỈ các số dương. Nếu không có số dương, in 'No positive numbers'.
Problem: Enter n integers. Calculate average of ONLY positive numbers. If no positive numbers, print 'No positive numbers'.
Ví dụ:
Enter count: 5
Numbers: -3, 10, -5, 20, 30Output:
Average: 20.0Bài Tập 7: Phân Loại Tuổi (Age Category)
Đề bài: Nhập n tuổi. Phân loại mỗi tuổi: Child (0-12), Teen (13-19), Adult (20-64), Senior (65+).
Problem: Enter n ages. Categorize each: Child (0-12), Teen (13-19), Adult (20-64), Senior (65+).
Ví dụ:
Enter count: 4
Ages: 8, 16, 35, 70Output:
Child
Teen
Adult
SeniorBài Tập 8: Số Lớn Nhất và Nhỏ Nhất (Maximum and Minimum)
Đề bài: Nhập n số nguyên. Tìm và in cả số lớn nhất và số nhỏ nhất.
Problem: Enter n integers. Find and print both maximum and minimum.
Ví dụ:
Enter count: 5
Numbers: 15, 7, 42, 3, 23Output:
Maximum: 42
Minimum: 3Bài Tập 9: Tìm Số Lớn Thứ Hai (Find Second Largest)
Đề bài: Nhập n số nguyên (n >= 2). Tìm số lớn thứ hai.
Problem: Enter n integers (n >= 2). Find the second largest number.
Ví dụ:
Enter count: 5
Numbers: 15, 42, 8, 42, 23Output:
Second largest: 23Bài Tập 10: Đếm Số Âm và Số 0 (Count Negative and Zero)
Đề bài: Nhập n số nguyên. Đếm có bao nhiêu số âm và bao nhiêu số 0.
Problem: Enter n integers. Count how many are negative and how many are zero.
Ví dụ:
Enter count: 6
Numbers: -3, 0, 7, -5, 0, 12Output:
Negative: 2
Zero: 2Bài Tập 11: Tổng Số Chẵn (Sum of Even Numbers)
Đề bài: Nhập n số nguyên. Tính tổng CHỈ các số chẵn.
Problem: Enter n integers. Calculate sum of ONLY even numbers.
Ví dụ:
Enter count: 5
Numbers: 10, 15, 22, 7, 8Output:
Sum: 40Bài Tập 12: Đếm Số Chia Hết cho 2 HOẶC 3 (Count Numbers Divisible by 2 OR 3)
Đề bài: Nhập n số nguyên. Đếm có bao nhiêu số chia hết cho 2 hoặc 3.
Problem: Enter n integers. Count how many are divisible by 2 or 3.
Ví dụ:
Enter count: 5
Numbers: 10, 13, 9, 7, 12Output:
Count: 3Bài Tập 13: Tính Tiền Điện (Electricity Bill Calculator)
Đề bài: Nhập n số kWh. Tính tiền: 0-50 kWh: 1000đ/kWh, 51-100: 1500đ/kWh, >100: 2000đ/kWh.
Problem: Enter n kWh values. Calculate bill: 0-50 kWh: 1000/kWh, 51-100: 1500/kWh, >100: 2000/kWh.
Ví dụ:
Enter count: 3
kWh: 30, 75, 120Output:
30000
67500
170000Bài Tập 14: In Số Lớn Hơn Trung Bình (Print Numbers Greater Than Average)
Đề bài: Nhập n số nguyên. Tính trung bình, sau đó nhập lại n số và chỉ in các số lớn hơn trung bình.
Problem: Enter n integers. Calculate average, then enter n numbers again and print only those greater than average.
Ví dụ:
Enter count: 5
Numbers: 10, 20, 30, 40, 50
Enter numbers again:
10, 20, 30, 40, 50Output:
40
50Bài Tập 15: Số May Mắn (Lucky Numbers)
Đề bài: Nhập n số nguyên. In 'Lucky' nếu số chia hết cho 7 HOẶC có chữ số tận cùng là 7, ngược lại in 'Not lucky'.
Problem: Enter n integers. Print 'Lucky' if divisible by 7 OR ends with 7, otherwise print 'Not lucky'.
Ví dụ:
Enter count: 4
Numbers: 14, 17, 25, 7Output:
Lucky
Lucky
Not lucky
LuckyBài Tập 16: Kiểm Tra Dãy Tăng (Check Increasing Sequence)
Đề bài: Nhập n số nguyên. Kiểm tra xem dãy có tăng dần không (mỗi số lớn hơn số trước).
Problem: Enter n integers. Check if sequence is increasing (each number greater than previous).
Ví dụ:
Enter count: 5
Numbers: 3, 7, 10, 15, 20Output:
Increasing: YesBài Tập 17: Tìm Khoảng Cách Lớn Nhất (Find Maximum Gap)
Đề bài: Nhập n số nguyên liên tiếp. Tìm khoảng cách lớn nhất giữa hai số liên tiếp.
Problem: Enter n consecutive integers. Find the maximum gap between two consecutive numbers.
Ví dụ:
Enter count: 5
Numbers: 3, 7, 10, 12, 20Output:
Max gap: 8Bài Tập 18: Tổng Các Chữ Số (Sum of Digits)
Đề bài: Nhập một số nguyên dương. Tính tổng các chữ số của số đó.
Problem: Enter a positive integer. Calculate sum of its digits.
Ví dụ:
Enter number: 12345Output:
Sum: 15Bài Tập 19: Số Chính Phương (Perfect Square)
Đề bài: Nhập một số nguyên dương. Kiểm tra số đó có phải số chính phương không (tồn tại số i mà i×i = số đó).
Problem: Enter a positive integer. Check if it's a perfect square (exists number i where i×i equals that number).
Ví dụ:
Enter number: 144Output:
Perfect squareBài Tập 20: Số Hoàn Hảo (Perfect Number)
Đề bài: Nhập một số nguyên dương. Kiểm tra số đó có phải số hoàn hảo không (tổng các ước thực sự = chính nó). VD: 6 = 1+2+3.
Problem: Enter a positive integer. Check if it's a perfect number (sum of proper divisors equals itself). Ex: 6 = 1+2+3.
Ví dụ:
Enter number: 28Output:
Perfect