Em hãy viết chương trình nhập vào từ bàn phím 1 số nguyên khác 0 kiểm tra xem là số chính phương hay không ,số nguyên tố hay không

Em hãy viết chương trình nhập vào từ bàn phím 1 số nguyên khác 0 kiểm tra xem là số chính phương hay không ,số nguyên tố hay không

Câu trả lời này dùng AI, hãy kiểm tra lại trước khi sử dụng
Dưới đây là chương trình bằng ngôn ngữ Python để kiểm tra xem một số nguyên khác 0 có phải là số chính phương hay số nguyên tố hay không:

```python
import math

def kiem_tra_chinh_phuong(n):
# Kiểm tra số chính phương
if n < 0:
return False
sqrt_n = int(math.sqrt(n))
return sqrt_n * sqrt_n == n

def kiem_tra_so_nguyen_to(n):
# Kiểm tra số nguyên tố
if n <= 1:
return False
for i in range(2, int(math.sqrt(n)) + 1):
if n % i == 0:
return False
return True

def main():
try:
number = int(input("Nhập vào một số nguyên khác 0: "))
if number == 0:
print("Số nhập vào phải khác 0.")
return

if kiem_tra_chinh_phuong(number):
print(f"{number} là số chính phương.")
else:
print(f"{number} không phải là số chính phương.")

if kiem_tra_so_nguyen_to(number):
print(f"{number} là số nguyên tố.")
else:
print(f"{number} không phải là số nguyên tố.")
except ValueError:
print("Vui lòng nhập một số nguyên.")

if __name__ == "__main__":
main()
```

Giải thích:

1. Hàm `kiem_tra_chinh_phuong(n)`: Hàm này kiểm tra xem số n có phải là số chính phương hay không. Một số được gọi là số chính phương nếu có số nguyên dương m sao cho m*m = n. Đầu tiên, chúng ta kiểm tra nếu n < 0 thì trả về False vì số chính phương không thể âm. Sau đó, chúng ta tính căn bậc hai của n, làm tròn nó xuống và kiểm tra nếu bình phương của nó có bằng n hay không.

2. Hàm `kiem_tra_so_nguyen_to(n)`: Hàm này kiểm tra xem n có phải là số nguyên tố hay không. Một số nguyên tố là số lớn hơn 1 chỉ chia hết cho 1 và chính nó. Nếu n <= 1, chúng ta trả về False. Tiếp theo, chúng ta kiểm tra các số từ 2 đến căn bậc hai của n, nếu có bất kỳ số nào chia hết cho n thì n không phải là số nguyên tố.

3. Hàm `main()`: Chúng ta nhập một số nguyên từ bàn phím. Kiểm tra nếu số đó bằng 0 và yêu cầu nhập lại nếu cần thiết. Sau đó, chúng ta sử dụng các hàm đã định nghĩa để kiểm tra xem số nhập vào là số chính phương hay số nguyên tố và in kết quả ra màn hình.

Chương trình có xử lý trường hợp nhập liệu sai, yêu cầu nhập một số nguyên hợp lệ.
Đăng phản hồi