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

파이썬에서 주어진 부동 소수점 숫자가 짝수인지 홀수인지 확인하십시오.

<시간/>

부동 소수점 숫자가 있다고 가정합니다. 숫자가 홀수인지 짝수인지 확인해야 합니다. 일반적으로 정수의 경우 마지막 자릿수를 2로 나누면 간단합니다. 그러나 부동 소수점 수의 경우 그렇게 간단하지 않습니다. 홀수인지 짝수인지 확인하기 위해 마지막 숫자를 2로 나눌 수 없습니다.

따라서 입력이 n =200.290과 같으면 마지막 숫자가 2로 나누어 떨어지더라도 출력은 Odd가 됩니다.

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

  • :=숫자를 문자열로 변환
  • 플래그 :=거짓
  • 범위 크기가 s - 1에서 0인 i에 대해 1만큼 감소, do
    • s[i]가 '0'이고 플래그가 False이면
      • 다음 반복으로 이동
    • s[i]가 '.'와 같으면
      • 플래그 :=참
      • 다음 반복으로 이동
    • s[i]가 짝수이면
      • "짝수" 반환
    • "홀수" 반환

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

예시 코드

def solve(n) :
   s = str(n)

   flag = False
   for i in range(len(s) - 1, -1, -1) :
      if s[i] == '0' and flag == False :
         continue
  
      if s[i] == '.':
         flag = True
         continue
        
      if int(s[i]) % 2 == 0 :
         return "Even"
           
      return "Odd"    

n = 200.290
print(solve(n))

입력

200.290

출력

Odd