Pages

1 Kasım 2013 Cuma

C# Hesap Makinesi yapımı

C# öğrenmeye başlayan neredeyse herkesin karşısına hesap makinesi yapımı çıkar. Ben de bu yazıda C# ile basit bir hesap makinesinin nasıl yapıldığını anlatacağım.

Yapacağım hesap makinesinde butonları statik olarak oluşturduğumu söylemem gerekiyor. Çünkü bazen dinamik olarak hesap makinesi yapımı da istenebiliyor. Onu da daha sonraki yazılarımda anlatacağım.

İlk olarak yeni bir form oluşturuyorum ve aşağıdaki gibi butonlarımı ve textboxımı yerleştiriyorum.


1 yazan butona tıklıyorum ve içine aşağıdaki kodu yazıyorum.


textBox1.Text = textBox1.Text + "1";

Bu işlemi sırasıyla sayıların bulunduğu diğer butonlara da uyguluyorum.

Şimdi sayfama sayi, islem ve sonuc adında 3 tane integer değişken ekliyorum.


Şimdi toplama butonuna çift tıklıyorum ve aşağıdaki kodları yazıyorum.

sayi = Convert.ToInt32(textBox1.Text);
textBox1.ResetText();
islem = 1;

Bu kodlarda textbox içindeki değeri integera çevirerek sayi değişkenine atıyorum ve ardından textboxı resetliyorum.

Şimdi aynı işlemi çıkarma, çarpma ve bölme işlemi için yapıyorum.

Çıkarma işleminde islem = 2;
Çarpma işleminde islem = 3;
Bölme işleminde islem = 4; yapıyorum.

Şimdi Hesapla butonuna çift tıklayarak içine aşağıdaki kodları yazıyorum.

int tb = Convert.ToInt32(textBox1.Text);

            if (islem == 1) 
            {
                sonuc = sayi + tb;
            }
            else if (islem == 2) 
            {
                sonuc = sayi - tb;
            }
            else if (islem == 3)
            {
                sonuc = sayi * tb;
            }
            else if (islem == 4)
            {
                sonuc = sayi / tb;
            }

            textBox1.ResetText();
            textBox1.Text = sonuc.ToString();

Böylelikle basit bir hesap makinesi yapmış oluyorum.

11 yorum:

  1. Harbi Ögrendim Teşekkür Ederim

    YanıtlaSil
  2. Çok iyi anlatım.Teşekkürler

    YanıtlaSil
  3. private void button2_Click(object sender, EventArgs e)
    {
    textBox1.Text = "( )";
    }

    private void button3_Click(object sender, EventArgs e)
    {
    textBox1.Text = " ";
    }

    private void button4_Click(object sender, EventArgs e)
    {
    textBox1.Text = " ";
    }

    private void button5_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "7";


    }

    private void button6_Click(object sender, EventArgs e)
    {

    textBox1.Text = textBox1.Text + "8";


    }

    private void button7_Click(object sender, EventArgs e)
    {

    textBox1.Text = textBox1.Text + "9";


    }

    private void button8_Click(object sender, EventArgs e)
    {


    sayi = Convert.ToInt32(textBox1.Text);
    textBox1.ResetText();
    islem = 4;

    }

    private void button9_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "4";


    }

    private void button10_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "5";


    }

    private void button11_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "6";


    }

    private void button12_Click(object sender, EventArgs e)
    {

    sayi = Convert.ToInt32(textBox1.Text);
    textBox1.ResetText();

    islem = 3;

    }

    private void button13_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "1";



    }

    private void button14_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "2";


    }

    private void button15_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "3";


    }

    private void button16_Click(object sender, EventArgs e)
    {

    sayi = Convert.ToInt32(textBox1.Text);
    textBox1.ResetText();
    islem = 2;

    }

    private void button17_Click(object sender, EventArgs e)
    {
    textBox1.Text = textBox1.Text + "0";


    }

    private void button18_Click(object sender, EventArgs e)
    {
    textBox1.Text = ".";
    }

    private void button19_Click(object sender, EventArgs e)
    {
    int tb;

    tb = Convert.ToInt32(textBox1.Text);

    if (islem == 1)
    {
    sonuc = sayi + tb;
    }
    else if (islem == 2)
    {
    sonuc = sayi - tb;
    }
    else if (islem == 3)
    {
    sonuc = sayi * tb;
    }
    else if (islem == 4)
    {
    sonuc = sayi / tb;

    textBox1.Text = sonuc.ToString();

    }
    }

    private void button20_Click(object sender, EventArgs e)
    {

    sayi = Convert.ToInt32(textBox1.Text);
    textBox1.ResetText();
    islem = 1;


    }

    private void Form1_Load(object sender, EventArgs e)
    {


    }




    }
    }
    aynen böyle yazdım sayılar textbox da görünüyo fakat eşittir butonu işlevini yapmıyo hata nerede acaba?

    YanıtlaSil
  4. Beyler Burdan Bakabilirsiniz
    https://www.youtube.com/watch?v=77uxzONEOxg
    Beğenmeyi Ve Abone Olmayıda Unutmayın :D

    YanıtlaSil
  5. Hocam içerikleriniz süper çok teşekkürler..

    YanıtlaSil
  6. "tb" textbox'tan alınan değer.
    int tb = Convert.ToInt32(textBox1.Text);

    YanıtlaSil
  7. Dilerseniz, burdaki c# makalelerine bakabilirsiniz http://www.teknoparki.com/programlama/c/

    YanıtlaSil
  8. + işlemini doğru yapıyor fakat -'de topluyor * ve / ise tb=Convert.ToInt32(textbox1.Text)'i sarıya boyuyor yardım ederseniz sevinirim.

    YanıtlaSil
  9. Eşittir butonu çalışmıyor diyorsun ama hangisi eşittir butonu keşke butonların isimlerini değiştirseydin.

    YanıtlaSil