

Hà Quốc Nguyên
Giới thiệu về bản thân



































def ucln(a, b):
while b != 0:
a, b = b, a % b
return a
# Nhập hai số tự nhiên từ bàn phím
a = int(input("Nhập số tự nhiên a: "))
b = int(input("Nhập số tự nhiên b: "))
# Gọi hàm và in kết quả
print(f"Ước chung lớn nhất của {a} và {b} là: {ucln(a, b)}")
Giải thích ngắn gọn:
- Hàm ucln(a, b) dùng thuật toán Euclid.
- Trong vòng lặp, a và b được cập nhật liên tục cho đến khi b = 0, khi đó a là UCLN.
- Sau khi nhập 2 số từ người dùng, chương trình gọi hàm và in kết quả.
while True:
try:
a = float(input("Nhập số thực dương a: "))
if a > 0:
binh_phuong = a ** 2
print(f"Bình phương của {a} là: {binh_phuong:.2f}")
break
else:
print("Số vừa nhập chưa phải số thực dương. Hãy nhập lại.")
except ValueError:
print("Dữ liệu nhập không hợp lệ. Hãy nhập một số thực.")
Giải thích :
- Sử dụng vòng lặp while True để yêu cầu nhập lại cho đến khi nhập đúng.
- Dùng try-except để xử lý lỗi nếu người dùng nhập không phải là số.
- Kiểm tra nếu a > 0 thì tính bình phương và in ra kết quả với 2 chữ số sau dấu phẩy (:
Chương trình có lỗi cú pháp (SyntaxError) ở dòng if x < y vì thiếu dấu hai chấm (:) ở cuối câu lệnh điều kiện if.
Giải thích :
Trong Python , sau câu lệnh if ,bạn bắt buộc phả có dấu : để bắt đầu khối lệnh bên trong điều kiện đó. Nếu không có dấu :, chương trình sẽ báo lỗi cú pháp.
Cách khắc phục:
Thêm dấu hai chấm : vào cuối dòng if, như sau:
x = 10 . 5
y = 20 . 9
if x < y :
print(“x nhỏ hơn y”)
Khi đó , chương trình sẽ chạy đúng và in ra :
x nhỏ hơn y