Nếu n là hợp số thì dễ thấy n phải có ước số nguyên tố nhỏ hơn hoặc bằng . Viết chương tình tối ưu hoá hơn nhiệm vụ 1, bài 31 theo cách sau: để tìm ước số nguyên tố nhỏ nhất thì chỉ cần tìm trong các số 2, 3, ..., . Nếu trong dãy trên không tìm thấy ước của n thì kết luận ngay n là số nguyên tố.
Quảng cáo
1 câu trả lời 112
def phanTichSoNguyen(n):
i = 2
A = []
while (n > 1):
if (n % i == 0):
n = n // i;
A.append(i)
else:
i = i + 1
return A
n = int(input("Nhập số nguyên dương n = "))
A = phanTichSoNguyen(n)
size = len(A)
if size == 1:
print("n là số nguyên tố")
else:
print("n là hợp số")
sb = "";
for i in range(0, size - 1):
sb = sb + str(A[i]) + " x "
sb = sb + str(A[size-1])
print("Kết quả:", n, "=", sb)

Quảng cáo
Bạn cần hỏi gì?
Câu hỏi hot cùng chủ đề
-
Đã trả lời bởi chuyên gia
55640 -
Đã trả lời bởi chuyên gia
31608 -
30111
