สมมุติว่าเราได้รับจำนวนมากและต้องตรวจสอบว่าจำนวนนั้นหารด้วย 19 ลงตัวหรือไม่
ดังนั้นหากอินพุตเป็น 86982 เอาต์พุตจะเป็น "หารได้"
เราจะแก้ปัญหานี้โดยใช้วิธีการบวกซ้ำ โดยแยกหลักสุดท้ายออกจากตัวเลข คูณด้วย 2 แล้วบวกผลลัพธ์กับตัวเลขที่เหลือจนได้ตัวเลขสองหลักที่หารด้วย 19 ลงตัว
พี>เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- ในขณะที่จำนวนหารด้วย 100 ลงตัว ให้ทำ
- last_digit :=หมายเลข mod 10
- จำนวน :=มูลค่าพื้นของ (ตัวเลขหารด้วย 10)
- number :=number + last_digit * 2
- คืนค่า จริง หากม็อด 19 เท่ากับ 0
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
def solve(number) :
while(number // 100) :
last_digit = number % 10
number //= 10
number += last_digit * 2
return (number % 19 == 0)
number = 86982
if solve(number) :
print("Divisible")
else :
print("Not Divisible") อินพุต
86982
ผลลัพธ์
Divisible