PHẠM QUANG DUY
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: "))
# Kiểm tra tính hợp lệ
if a < 0 or b < 0:
print("Vui lòng nhập hai số tự nhiên không âm.")
else:
ket_qua = UCLN(a, b)
print(f"UCLN({a}, {b}) = {ket_qua}")
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("Giá trị nhập không hợp lệ. Hãy nhập một số thực dương.")
1. Lỗi của chương trình:
Chương trình trên gặp lỗi cú pháp (syntax error) ở dòng lệnh if x ‹ y.
2. Mã lỗi:
Khi chạy chương trình, Python sẽ báo lỗi:SyntaxError: invalid character '‹' (U+2039)
3. Giải thích lý do lỗi:
Trong câu lệnh điều kiện if x ‹ y, ký tự ‹ không phải là dấu ”<” hợp lệ trong Python. Đây là một ký tự đặc biệt (Unicode U+2039), có hình dạng giống dấu nhỏ hơn nhưng không được Python công nhận là toán tử so sánh.
Python chỉ cho phép các toán tử so sánh hợp lệ như:==, !=, <, >, <=, >=.
Ngoài ra, dòng if cũng thiếu dấu hai chấm (:) ở cuối dòng, điều này cũng dẫn đến lỗi cú pháp.
4. Cách khắc phục:Thay ký tự ‹ bằng dấu < hợpThêm dấu hai chấm (:) vào cuối dòng