Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 숫자의 홀수 자리에 있는 자릿수의 합이 K로 나누어 떨어지는지 확인하십시오.

<시간/>

숫자 n과 다른 숫자 k가 있다고 가정하고 홀수 위치(오른쪽에서 왼쪽으로)에 있는 n의 자릿수의 합이 k로 나누어 떨어지는지 확인해야 합니다.

따라서 입력이 n =2416 k =5와 같으면 오른쪽에서 왼쪽으로 홀수의 합이 4 + 6 =10이므로 출력은 True가 됩니다. 이는 5로 나눌 수 있습니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • 총계:=0, 위치:=1
  • n> 0일 때 수행
    • pos가 홀수이면
      • 총계 :=총계 + (n mod 10)
    • n :=(n / 10)의 몫
    • 위치 :=위치 + 1
  • 총계가 k로 나누어지면
    • 참 반환
  • 거짓을 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

예시 코드

def solve(n, k):
   total = 0
   pos = 1
   while n > 0:
      if pos % 2 == 1:
         total += n % 10
      n = n // 10
      pos += 1
     
   if total % k == 0:
      return True
   return False

n = 2416
k = 5
print(solve(n, k))

입력

2416, 5

출력

True