
Nếu bạn mới bắt đầu học lập trình, đặc biệt là Python, thì những bài tập đơn giản như nhập tên và tuổi, sau đó in ra lời chào là bước khởi đầu lý tưởng. Bài tập này giúp bạn làm quen với:
-
Cách nhập dữ liệu từ bàn phím trong Python (hàm
input()), -
Cách làm việc với chuỗi (string),
-
Cách in kết quả ra màn hình bằng
print().
Trong bài viết này, chúng ta sẽ cùng phân tích bài toán, thiết kế thuật toán, đánh giá độ phức tạp, và viết code Python hoàn chỉnh.
Bạn xem thêm:
- 7 Sai Lầm Chí Mạng Khi Tự Học Python – Đừng Làm Những Điều Này
- Deep Dive Python I/O: Vượt xa “Hello, World!” và Hiểu về Buffering
- 50 Bài Tập Python Từ Dễ Đến Khó – Rèn Tư Duy Thuật Toán
1. Mô tả bài toán

Đề bài:
Viết chương trình Python thực hiện các yêu cầu sau:
-
Nhập tên của người dùng.
-
Nhập tuổi của người dùng.
-
In ra màn hình câu:
Xin chào [Tên], bạn [Tuổi] tuổi
Ví dụ:
-
Input:
-
Tên:
An -
Tuổi:
20
-
-
Output:
-
Xin chào An, bạn 20 tuổi
-
Đây là một bài tập Python cơ bản nhưng giúp bạn hiểu rõ cách chương trình tương tác với người dùng.
2. Phân tích bài toán & ý tưởng thuật toán

Để giải bài này trong Python, ta chỉ cần một số bước rất đơn giản.
Các bước thực hiện
-
Bước 1: Sử dụng hàm
input()để yêu cầu người dùng nhập tên.-
Lưu vào biến, ví dụ:
ten.
-
-
Bước 2: Sử dụng
input()để yêu cầu người dùng nhập tuổi.-
Lưu vào biến, ví dụ:
tuoi. -
Có thể giữ dạng chuỗi (string) hoặc ép sang số nguyên (
int) nếu sau này cần tính toán.
-
-
Bước 3: Tạo chuỗi kết quả theo mẫu:
-
"Xin chào [Tên], bạn [Tuổi] tuổi". -
Trong Python, có thể dùng:
-
f-string:
f"Xin chào {ten}, bạn {tuoi} tuổi" -
hoặc nối chuỗi:
"Xin chào " + ten + ", bạn " + tuoi + " tuổi"
-
-
-
Bước 4: Dùng
print()để in kết quả ra màn hình.
3. Thiết kế thuật toán (mô tả từng bước)

Có thể mô tả thuật toán bằng dạng liệt kê:
-
Nhập chuỗi
tentừ bàn phím. -
Nhập chuỗi
tuoitừ bàn phím. -
Gán
thong_diep = "Xin chào " + ten + ", bạn " + tuoi + " tuổi". -
In
thong_diep.
Hoặc ngắn gọn bằng giả mã (pseudocode):
4. Phân tích độ phức tạp thuật toán

Dù bài toán đơn giản, việc tập phân tích độ phức tạp là rất quan trọng khi học lập trình.
-
Độ phức tạp thời gian (Time Complexity):
-
Chương trình chỉ thực hiện một số bước cố định:
-
Nhập 2 lần,
-
Tạo 1 chuỗi,
-
In 1 lần.
-
-
Số bước không phụ thuộc vào độ lớn dữ liệu (không có vòng lặp, không xử lý mảng lớn).
-
Vì vậy, độ phức tạp thời gian là:
➜ O(1) (thời gian hằng số).
-
-
Độ phức tạp bộ nhớ (Space Complexity):
-
Chỉ dùng vài biến:
ten,tuoi,thong_diep. -
Số lượng biến là cố định, không tăng theo dữ liệu.
-
Vì vậy, độ phức tạp bộ nhớ là:
➜ O(1) (bộ nhớ hằng số).
-
5. Code Python mẫu: nhập tên, tuổi và in lời chào

Dưới đây là một số cách viết đáp án bài tập Python này.
Cách 1: Giữ tuổi dưới dạng chuỗi (đơn giản, đủ cho bài toán)
-
input()luôn trả về kiểu dữ liệu string (chuỗi). -
Vì bài toán chỉ yêu cầu in, không cần tính toán với tuổi, nên giữ
tuoilà chuỗi là đủ. -
Sử dụng f-string giúp code gọn và dễ đọc.
Cách 2: Ép kiểu tuổi sang số nguyên (dành cho tình huống mở rộng)
-
Kiểm tra điều kiện theo tuổi,
-
Tính số năm còn lại để đạt một mốc tuổi nào đó,
-
Xây dựng các bài tập nâng cao hơn từ bài cơ bản này.
6. Một số lỗi thường gặp khi làm bài tập Python này

Khi người mới học Python làm bài tập “nhập tên và tuổi, in lời chào”, thường hay mắc một số lỗi sau:
6.1. Quên ép kiểu khi cần dùng số
Ví dụ:
-
Lỗi: So sánh chuỗi với số.
-
Cách khắc phục: ép kiểu
int(tuoi)trước khi so sánh.
6.2. Lỗi khi nối chuỗi và số
-
Lỗi: Không thể nối chuỗi (
str) với số nguyên (int) bằng dấu+. -
Cách khắc phục:
-
Dùng f-string:
print(f"Xin chào {ten}, bạn {tuoi} tuổi") -
Hoặc ép
str(tuoi)nếu dùng+.
-
7. Mở rộng: phát triển thêm từ bài tập cơ bản

Từ bài tập nhập tên và tuổi trong Python, bạn có thể mở rộng ra nhiều bài tập khác để luyện thêm:
-
Kiểm tra độ tuổi:
-
Thêm năm sinh:
-
Ghép với nhiều người dùng (dùng vòng lặp):
-
Cho phép nhập thông tin của nhiều người.
-
Lặp lại việc nhập tên, tuổi nhiều lần.
-
Các biến thể này đều bắt nguồn từ bài tập Python cơ bản: nhập tên và tuổi, nhưng giúp bạn dần tiếp cận:
-
Cấu trúc rẽ nhánh (
if), -
Vòng lặp (
for,while), -
Xử lý dữ liệu đơn giản.
8. Kết luận

Bài tập “Nhập tên và tuổi, in ra ‘Xin chào [Tên], bạn [Tuổi] tuổi’” tuy rất đơn giản nhưng lại là bước khởi đầu quan trọng khi:
-
Học Python cho người mới bắt đầu,
-
Làm quen với input/output trong Python,
-
Tập phân tích thuật toán dù chỉ là O(1),
-
Hiểu cách làm việc với kiểu dữ liệu chuỗi và số.
Nếu bạn đang tìm các bài tập Python cơ bản, hãy bắt đầu từ những ví dụ nhỏ như thế này, sau đó tăng dần độ khó bằng cách:
-
Thêm điều kiện,
-
Thêm vòng lặp,
-
Xử lý nhiều dữ liệu hơn.
Các khóa học liên quan: