Hesap Makinesinin Tasarımı Şu Şekilde



Kodlar

//Field 'larımız
private Button _islem, _btn;
private double _top;
public string Opertor = "";
public byte Sayac;
private bool _durum;



// 0'dan 9 a kadar olan butonlar tıklandığında yapılacak işlemler
private void Btn_Click(object sender, EventArgs e)
{
if (lblSonuc.Text == @"0" || lblSonuc.Text == _top.ToString(CultureInfo.InvariantCulture))
lblSonuc.Text = "";
_btn = (Button)sender;
lblSonuc.Text += _btn.Text;
_durum = true;
}



// +,-,/,x operetörlerine basıldığında yapılacak işlemler
private void Operator_Click(object sender, EventArgs e)
{
if (_durum != true) return;
_islem = (Button)sender;
if (Sayac == 0)
{
Opertor = _islem.Text;
_top = Convert.ToInt64(lblSonuc.Text);
lblGostrDty.Text += lblSonuc.Text + Opertor;
lblSonuc.Text = "";
}
Sayac++;
if (Sayac >= 2)
{
lblGostrDty.Text += lblSonuc.Text + _islem.Text;
switch (Opertor)
{
case "/":
_top = _top / Convert.ToInt64(lblSonuc.Text);
break;

case "x":
_top = _top * Convert.ToInt64(lblSonuc.Text);
break;

case "+":
_top = _top + Convert.ToInt64(lblSonuc.Text);
break;

case "-":
_top = _top - Convert.ToInt64(lblSonuc.Text);
break;
}
lblSonuc.Text = _top.ToString(CultureInfo.InvariantCulture);
Opertor = _islem.Text;
}
_durum = false;
}
// Eşittir butonuna tıklandığında yapılacak işlemler
private void Btn_Esittir_Click(object sender, EventArgs e)
{
if (_durum != true) return;
Sayac = 0;
switch (_islem.Text)
{
case "/":
_top = _top / Convert.ToInt64(lblSonuc.Text);
break;

case "x":
_top = _top * Convert.ToInt64(lblSonuc.Text);
break;

case "+":
_top = _top + Convert.ToInt64(lblSonuc.Text);
break;

case "-":
_top = _top - Convert.ToInt64(lblSonuc.Text);
break;
}
lblSonuc.Text = _top.ToString();

lblGostrDty.Text = "";
}



//Sil butonuna tıklandığında yapılacak işlemler
private void Btn_Sil_Click(object sender, EventArgs e)
{
lblSonuc.Text = @"0";
lblGostrDty.Text = "";
_top = 0;
Opertor = "";
Sayac = 0;
}


İndirmek için şu adresi ziyaret edebilirsiniz.C# Hesap Makinesi Yapımı