Merhaba. Python dilini kullanarak şöyle bir şey yazdım:
[CODE lang="python" title="Yazdığım şey"]def elo_sor():
rapid = input("Rapid ELO'nuz kaç? Oynamıyorsanız '-' yazınız: ")
if rapid == '-':
pass
elif type(rapid) != int:
print("Bir sayı girmelisiniz!!!")
return
elif type(rapid) == int:
rapid = rapid
print("Güzel.")
pass
blitz = input("Blitz ELO'nuz kaç? Oyamıyorsanız '-' yazınız.")
if blitz == '-':
pass
elif blitz is not int:
print("Bir sayı girmelisiniz!!!")
elif blitz is int:
blitz = blitz
print(blitz)
print(rapid)
elo_sor()[/CODE]
Amacı kullanıcıdan ELO (puan) bilgisini almak; eğer sayıysa depolamak, eğer sayı değilse de kullanıcıyı uyarıp yeniden girdi istemek fakat ben bir sayı da girsem kendi yazdığım "Bir sayı girmelisiniz" hatasını alıyorum. Neden böyle oluyor?
Python ASCII kullanıyor olmalı, eğer öyleyse bir fonksiyon yazarsın ve girdilerin tek tek tüm karakterlerine bakarak harf veya sayı olup olmadığını anlayabilirsin.
[CODE title="Pseudocode"]bool isdigit(string digit){
for(int i = 0; i < digit.size(); i++){
if(digit >= '0' || digit<='9'){continue;}
else{return false;}
}
return true;
}[/CODE]
Teşekkürler. Böyle yapınca integer girmezsem benim hatamı değil kendi hatasını verim yazılımı çökertiyor ama onu da exceptation ile halledebilirim sanırım.