C# Dört İşlem Yardım

Proctives

Öğrenci
Katılım
21 Temmuz 2013
Mesajlar
19
Reaksiyon puanı
0
Puanları
1
Merhaba arkadaşlar. C#'ta konsol uygulamasında bir program üzerinde oynamalar yapacağım ama ufak bir problemle karşılaştım. Şöyle ki: Kullanıcı ilk başta +-*/ ifadelerinden birini girmesi gerekiyor. Bunlar haricinde bir tuşa bastığında hata mesajı veriyor. Bu kısmı hatası olarak dört işlemden biriyle geçtikten sonra iki tane sayı girmesi isteniyor. İşte bu kısımda kullanıcı sayı yerine başka bir ifade girince yine bu uyarı mesajını versin istiyorum. Yani kullanıcıya iki sayı giriniz dediğinde kullanıcı sayıdan başka bir şey giremeyecek,girdiğinde hata mesajı ile karşılacak. Lütfen bilen bir arkadaşım varsa yardımcı olsun,rica ediyorum...




YAZDIĞIM KOD:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
bool secimDogrumu = false;
char islem = 'a';
int s1, s2, sonuc = 0;
Console.Write("-----------------------------------------\n" ) ;
do
{
Console.Write("Aritmatik İşlemi [+-*/] Giriniz: ");
ConsoleKeyInfo key = Console.ReadKey();
Console.WriteLine("");
if (key.KeyChar == '+'
|| key.KeyChar == '-'
|| key.KeyChar == '*'
|| key.KeyChar == '/')
{
secimDogrumu = true;
islem = key.KeyChar;
}
else
{
Console.WriteLine("Hatalı İşlem!...Tekrar deneyiniz...");
}
}
while (!secimDogrumu);
Console.Write("İlk sayıyı giriniz: ") ;
s1 = Convert.ToInt32(Console.ReadLine());
Console.Write("İkinci sayıyı giriniz: ");
s2 = Convert.ToInt32(Console.ReadLine());
Console.Write("------------------------------------------\n");


switch (islem)
{
case '+':
sonuc = s1 + s2;
Console.WriteLine("{0} ve {1} sayılarının sonucu: {2}\n\n", s1, s2, sonuc);
break;
case '-':
sonuc = s1 - s2;
Console.WriteLine("{0} ve {1} sayılarının sonucu: {2}\n\n", s1, s2, sonuc);
break;
case '*':
sonuc = s1 * s2;
Console.WriteLine("{0} ve {1} sayılarının sonucu: {2}\n\n", s1, s2, sonuc);
break;
case '/':
sonuc = s1 / s2;
Console.WriteLine("{0} ve {1} sayılarının sonucu: {2}\n\n", s1, s2, sonuc);
break;
default:
Console.WriteLine("Hatalı İşlem!...");
break;


}
}
}
}





Burada kırmızı ile işaretlediğim alanı sevdiğim bir abim düzenledi. Ama aynı hata mesajını aşağıdaki çıktıdayken de vermesini istiyorum...
2Wqydzp.png





İlk sayıyı giriniz kısmında sayı yerine "k" harfine basınca "Hatalı işlem!" uyarısı vermesini istiyorum. Fakat bu şekilde bir hatayla karşılaşıyorum. Buraya nereyi değiştirmem lazım acaba?

gToR41W.png
 
Üst