หาตัวหารที่น้อยที่สุด (มากกว่า 1) ของจำนวนเต็มโดยวนลูปจาก 2 ถึง n
ตัวอย่างโค้ด
n = int(input("Enter a number: "))
print("Number:", n)
for i in range(2, n + 1):
if n % i == 0:
print("Smallest divisor:", i)
breakผลลัพธ์
Enter a number: 56 Number: 56 Smallest divisor: 2
คำอธิบาย
วนลูป i = 2, 3, 4, ... ถึง n
ตัวแรกที่ n % i == 0 คือตัวหารน้อยที่สุด
ใช้
breakหยุดลูปทันทีที่เจอถ้าไม่เจอจนจบลูป → n เป็นจำนวนเฉพาะ (ตัวหารน้อยที่สุดคือ n เอง)
Optimization: วนแค่ถึง √n เพียงพอ