12 Kasım 2010 Cuma

Windows Hesap Makinesi Yapımı


Bu örnekte windows’un hesap makinesine hemen hemen aynı işlevi gören bir hesap makinesi yazmaya çalıştım. Dinamik kodlamadığımdan dolayı kod fazlalığı var. Açıklamalı şekilde yapmadım fakat anlamadığınız veya yerleri mail ile sorabilirsiniz.


public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        double sayi1=0;
        double sayi2=0;
        double islem;
        int secilen=0;
        int secilen2;


        private void btn1_Click(object sender, EventArgs e)
        {
            Button gelen = (Button)sender;
              if (char.IsNumber(Convert.ToChar(gelen.Text)))
            {
               
                textBox1.Text += gelen.Text;
            }
           
           
        
        }
       
        private void BtnC_Click(object sender, EventArgs e)
        {
            textBox1.Text = "";
            sayi1 = 0;
            sayi2 = 0;
        }
        private void BtnSqrt_Click(object sender, EventArgs e)
        {
            double sqrt = Convert.ToDouble(textBox1.Text);
            double sqrt2 = Math.Sqrt(sqrt);
            textBox1.Text = sqrt2.ToString();
        }
        private void BtnCarpi_Click(object sender, EventArgs e)
        {
            if (secilen != 2)
            {
                if (textBox1.Text != "")
                {
                    sayi1 = Convert.ToDouble(textBox1.Text);
                }
            }
            secilen2 = 2;
            if (secilen == 2)
            {
                esittir();
            }
            secilen = 2;
            textBox1.Text = "";
        }
        public void esittir()
        {
            if (secilen2 == 1)
            {
                if (textBox1.Text != "")
                {
                    sayi2 = Convert.ToDouble(textBox1.Text);
                }
                sayi1 = sayi1 / sayi2;
                sayi2 = 0;
                islem = sayi1;
            }
            if(secilen2==2)
            {
                if (textBox1.Text != "")
                {
                    sayi2 = Convert.ToDouble(textBox1.Text);
                }
                sayi1 = sayi1 * sayi2;
                sayi2 = 0;
                islem = sayi1;
            }
            if (secilen2 == 3)
            {
                if (textBox1.Text != "")
                {
                    sayi2 = Convert.ToDouble(textBox1.Text);
                }
                sayi1 = sayi1 - sayi2;
                sayi2 = 0;
                islem = sayi1;
            }
            if (secilen2 == 4)
            {
                if (textBox1.Text != "")
                {
                    sayi2 = Convert.ToDouble(textBox1.Text);
                }
                sayi1 = sayi1 + sayi2;
                sayi2 = 0;
                islem = sayi1;
            }
           
        }
        private void btnBolu_Click(object sender, EventArgs e)
        {
            if(secilen!=1)
            {
            if (textBox1.Text != "")
            {
                sayi1 = Convert.ToDouble(textBox1.Text);
            }
            }
            secilen2 = 1;
           
            if (secilen==1)
            {
                esittir();
            }
            secilen = 1;
            textBox1.Text = "";
          
           
        }
        private void BtnEsittir_Click(object sender, EventArgs e)
        {
           
            if (textBox1.Text != "")
            {
                sayi2 = Convert.ToDouble(textBox1.Text);
            }
            if (secilen == 1)
            {
                islem = sayi1 / sayi2;
                sayi1 = 0;
                sayi2 = 0;
                secilen = 0;
            }
            if (secilen == 2)
            {
                islem = sayi1 * sayi2;
                sayi1 = 0;
                sayi2 = 0;
                secilen = 0;
            }
            if (secilen == 3)
            {
                islem = sayi1 - sayi2;
                sayi1 = 0;
                sayi2 = 0;
                secilen = 0;
            }
            if (secilen == 4)
            {
                islem = sayi1 + sayi2;
                sayi1 = 0;
                sayi2 = 0;
                secilen = 0;
            }
          
            textBox1.Text = islem.ToString();
        }
        private void button19_Click(object sender, EventArgs e)
        {
            if (textBox1.Text == "")
            {
                textBox1.Text = "0";
            }
            else
            {
                textBox1.Text = textBox1.Text + "0";
            }
        }
        private void button20_Click(object sender, EventArgs e)
        {
            double negatif = (Convert.ToDouble(textBox1.Text));
            textBox1.Text=((-1)*(negatif)).ToString();
        }
        private void button21_Click(object sender, EventArgs e)
        {
            textBox1.Text =textBox1.Text + "," ;
        }
        private void BtnEksi_Click(object sender, EventArgs e)
        {
            if (secilen != 3)
            {
                if (textBox1.Text != "")
                {
                    sayi1 = Convert.ToDouble(textBox1.Text);
                }
            }
            secilen2 = 3;
            if (secilen == 3)
            {
                esittir();
            }
            secilen = 3;
            textBox1.Text = "";
        }
        private void BtnArti_Click(object sender, EventArgs e)
        {
            if (secilen != 4)
            {
                if (textBox1.Text != "")
                {
                    sayi1 = Convert.ToDouble(textBox1.Text);
                }
            }
            secilen2 = 4;
            if (secilen == 4)
            {
                esittir();
            }
            secilen = 4;
            textBox1.Text = "";
        }
        private void BtnCE_Click(object sender, EventArgs e)
        {
            textBox1.Text = "";
           
        }
        private void BtnGeriAl_Click(object sender, EventArgs e)
        {
            string s = textBox1.Text;
            double j = s.Length;
            textBox1.Text = "";
           
            for (int i = 0; i < j - 1; i++)
            {
              
                textBox1.Text = textBox1.Text + s[i].ToString();
             
            }
           
           
        }
        private void BtnYuzde_Click(object sender, EventArgs e)
        {
            textBox1.Text = "0";
        }
        private void btn1BoluX_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "")
            {
                textBox1.Text = (1 / (Convert.ToDouble(textBox1.Text))).ToString();
            }
        }

      
      
      
    }

1 yorum:

  1. iyi günler hocam bu hesap makinesinde geçmiş işlemi var mı bu hesap makinesinde veya hesap makinesinin geçmişini nasıl görüntüleyebiliriz.

    YanıtlaSil