Computer >> Máy Tính >  >> Lập trình >> Python

Kiểm tra xem có số lớn nào chia hết cho 17 hay không trong Python

Giả sử, chúng ta được cho một số và chúng ta phải kiểm tra xem số đó có chia hết cho 17.

Vì vậy, nếu đầu vào là 99943, thì đầu ra sẽ là Chia hết.

Chúng ta sẽ giải quyết vấn đề này bằng cách sử dụng phương pháp trừ lặp lại, trong đó chúng ta lấy chữ số cuối cùng của số và trừ nó 5 lần cho đến khi chúng ta nhận được một số có hai chữ số chia hết cho 17.

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

  • trong khi số chia hết cho 100, do
    • last_digit:=number mod 10
    • number:=giá trị sàn của (số chia cho 10)
    • number:=number - last_digit * 5
  • trả về true nếu số mod 17 giống với 0.

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

Ví dụ

def solve(number) :
   while(number // 100) :
      last_digit = number % 10
      number //= 10
      number -= last_digit * 5
   return (number % 17 == 0)
number = 99943
if solve(number) :
   print("Divisible")
else :
   print("Not Divisible")

Đầu vào

99943

Đầu ra

Divisible