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

Kiểm tra xem số dấu phẩy động đã cho là chẵn hay lẻ trong Python

Giả sử chúng ta có một số dấu phẩy động; chúng ta phải kiểm tra xem số đó là số lẻ hay số chẵn. Nói chung, đối với số nguyên, nó dễ dàng bằng cách chia chữ số cuối cùng cho 2. Nhưng đối với số dấu phẩy động, nó không thẳng tiến như vậy. Chúng ta không thể chia chữ số cuối cùng cho 2 để kiểm tra xem nó là lẻ hay chẵn.

Vì vậy, nếu đầu vào là n =200.290, thì đầu ra sẽ là Lẻ mặc dù chữ số cuối cùng chia hết cho 2.

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

  • s:=chuyển đổi số thành chuỗi
  • cờ:=Sai
  • đối với tôi trong phạm vi kích thước từ s - 1 đến 0, giảm đi 1, thực hiện
    • nếu s [i] là '0' và cờ là Sai, thì
      • chuyển sang lần lặp tiếp theo
    • nếu s [i] giống với '.', thì
      • cờ:=True
      • chuyển sang lần lặp tiếp theo
    • nếu s [i] chẵn thì
      • trả về "Even"
    • trả về "Kỳ lạ"

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

Mã mẫu

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))

Đầu vào

200.290

Đầu ra

Odd