29.11. Các lệnh sau khi thực hiện có thể sinh lỗi không? Nếu có thì lỗi có thể là gì?1. n =...

Câu hỏi:

29.11. Các lệnh sau khi thực hiện có thể sinh lỗi không? Nếu có thì lỗi có thể là gì?

1. n = int(input("Nhập số nguyên n: "))

2. if prime(n):

3.          print(n, "là số nguyên tố")

4. else:

5.          print(n, "là hợp số")

Câu trả lời:
Người trả lời: GV. Đỗ Đăng Vương
Cách làm:

1. Viết hàm kiểm tra số nguyên tố:

```
def prime(n):
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
```

2. Tiếp theo, nhập số nguyên từ người dùng và kiểm tra xem số đó có phải là số nguyên tố hay không:

```
n = int(input("Nhập số nguyên n: "))
if prime(n):
print(n, "là số nguyên tố")
else:
print(n, "là hợp số")
```

Câu trả lời:

Lệnh 1 có thể phát sinh lỗi ValueError khi người dùng nhập dữ liệu không phải là số nguyên.
Lệnh 3 có thể phát sinh lỗi NameError khi hàm prime() chưa được định nghĩa.
Kết quả của chương trình có thể sai nếu hàm prime() không được viết đúng cách, làm cho chương trình hiển thị kết quả sai. Bởi vì chương trình chỉ kiểm tra số nguyên tố mà không xử lý lỗi cho trường hợp người dùng nhập số không phải số nguyên, hoặc hàm prime() không chính xác, có thể dẫn đến việc hiển thị kết quả không chính xác.
Câu hỏi liên quan:
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.45325 sec| 2206.094 kb