Evet, ancak kullanıcı değer olarak 100 de girebilir. Ascii de 100 bir sayıya, bir ifadeye karşılık gelmiyor. O halde yine problemle karşılaşılacak. Ve belirttiğim, aşağıdaki gibi de denemiştim bunu. Ancak sonuç alamadım. Kod: #include <stdio. h> int main { int deger; printf ; scanf ; if (deger<= '48' && deger >='57') { do while (deger<='48' && deger>='57'); printf ; return 0; } else return 0; } ya da bu şekilde Kod: #include <stdio. h> int main { int deger; printf ; scanf ; if (deger<= 48 && deger >=57) { do while (deger<=48 && deger>=57); printf ; return 0; } else return 0; }

Kod: #include <stdio. h> int main { int deger; printf ; scanf ; if { do while ; printf ; return 0; } else return 0; } Arkadaşlar gördüğünüz gibi kullanıcıdan bir sayı değeri istiyorum ama varsayalım o ısrarla bir karakter değeri giriyor. Bunu tam olarak kullanıcının düzeltmesini istiyorum ve her seferinde kullanıcı sayı değeri dışında bir değer girince uyararak yeni bir değer girmesini istiyorum. Ancak bunu yine gördüğünüz gibi if ve while içinde tam olarak programa anlatamıyorum. Ascii table'ı kullanarak biraz uğraştım ancak tam olarak programa derdimi anlatamadım. Acaba bunu nasıl programa aktarabilriz?

Scanf ile veri aldıktan sonra ASCII değerine gore If koşulu yazman lazım. Eğer girilen karakterin ASCII kodu 48 den büyük esit ve 57 den kucuk esit ise bu bir sayıdır. Arasında değilse sayı değildir.