Ben bunu anlamadım. Geçersiz sayı ne? Belirli bir aralık mı, pozitif/negatif ayrımı mı, yoksa girilen şey integer olsun mu demeye çalışıyorsunuz? Hangi kodlar baştan çalışacak? Anladığımı yazdım, yanlışsa belirtir veya daha iyisi yapıyı kendinize göre kullanırsınız.
Python:
while True:
num = input("Enter a number: ")
try:
num = int(num)
break
except:
pass
print(num)
Ben bunu anlamadım. Geçersiz sayı ne? Belirli bir aralık mı, pozitif/negatif ayrımı mı, yoksa girilen şey integer olsun mu demeye çalışıyorsunuz? Hangi kodlar baştan çalışacak? Anladığımı yazdım, yanlışsa belirtir veya daha iyisi yapıyı kendinize göre kullanırsınız.
Python:
while True:
num = input("Enter a number: ")
try:
num = int(num)
break.
except:
pass.
print(num)
while True:
x = int(input("Bir tam sayı giriniz: "))
if x in range(1,101):
print("Durum sağlandı, program sonlandırılıyor...")
break
Python'da range() fonksiyonuna vereceğin ilk parametre nereden başlayacağını, ikinci parametre nerede duracağını belirtir. Bu nedenle x değişkeni 1'den itibaren (1 dahil) 101'e kadar olan (101 dahil değil) tam sayıları aldığında if durumu gerçekleşir. Eğer girdi bu aralıkta değilse if durumu sağlanamayacağından döngü kendini tekrar eder.
Aynı işlemi range() fonksiyonunu kullanmadan matematiksel karşılaştırma operatörleriyle de şu şekilde yapabilirsin:
Python:
while True:
x = int(input("Bir tam sayı giriniz: "))
if 1 <= x <= 100:
print("Durum sağlandı, program sonlandırılıyor...")
break