• Ana Sayfa
  • C#
  • C# Hesap Makinesi Yapımı || Windows Tarzı || Proje Dosyası

C# Hesap Makinesi Yapımı || Windows Tarzı || Proje Dosyası

 C# Hesap Makinesi Yapımı || Windows Tarzı || Proje Dosyası
Okunuyor C# Hesap Makinesi Yapımı || Windows Tarzı || Proje Dosyası

Selamun aleyküm C# Hesap Makinesi Yapımı göstereceğiz.Belki yüzlerce farklı yöntemle yapmak mümkünken biz daha çok tuş işlevlerini windowstakine benzer şekilde yapacağız.

Tuş işlevleri olarak yapmayı düşündüğümüz windows işletim sistemlerinde kurulu gelen hesap makinesi şudur.calculator windows ile ilgili görsel sonucu

Herhalde kullanmayanınız yoktur diye tahmin ediyorum.Windows arama penceresine hesap makinesi yazarakta açabilir kullanabilirsiniz.Yapacağımız Hesap makinesi tuş işlevleri olarak burdaki gibi çalışacak.Bunun için basit bir form tasarımı ve biraz kod yazmak yeterli olacaktır. 🙂 Şimdi projemize geçelim

C# Hesap Makinesi Yapımı



Örnek Hesap Makinesi Projemizi İndirin (Tıkla İndir)

Bu makalemizde, bir hesap makinesinde kullanılan genel fonksiyonlar gerçekleştireceğiz.
Bu makalede kullanılan kontroller ve teknikler:
Button – Hesap makinesindeki her işlem ve sayı için bir düğme kullanılır
Try Catch Finally – Hesaplamalar yapılırken, kullanıcın yanlış bir değer girmesi durumunda çıkacak hataları yakalamak için kullanılır.

Kontrollerin eklenmesi

Form üzerine tablodaki kontrolleri ekleyin belirtilen özelliklerini ayarlayalım.

1 adet textbox koyuyoruz.name kısmını yani ismini txtSayi değiştiriyoruz.

Button– 0 – 9 arası her sayı için Button(Sayi) isminde bir düğme ekliyoruz. Örnek: 5 sayısı için Button5 bunu yapmanın en kısa yolu 9 butonu sırayla aşşağıdaki formdaki gibi dizip text özelliklerini 1 den 9 a kadar sıralamak olacaktır.

Button – Her işlem için bir düğme ekleyin: Çarpma, bölme, toplama çıkarma, eşitlik, temizleme

[ads1]

Biraz butonlara şekil verdim azıcıkda renk düzenlemesi yaptım.Siz yapabilirsinizde yapmayadabilirsiniz.

C# Hesap Makinesi Yapımı Kodların Yazılması

Bu kodları global olarak programımızın tepesine yazıyoruz.Diğer işlemler ve butonların içerisinde kullanacağız.

private bool IslemSecildi = false; // secili işlem kontrolü
private double Sayi; //sayıları tutacak
private string Islem; //islemleri tutacak

Sayı düğmelerinden herhangi birine basıldığı zaman, metin kutusunun görünümünü değiştiren işlemi yazalım.

Bu aşşağıdaki kodları teker teker bütün rakam tuşlarımızın içerisine kopyalamamız gerektiğini unutmayalım.

 if (!(IslemSecildi))
            {
                txtSayi.Text += ((Button)sender).Text;
            }
            else
            {
                txtSayi.Text = ((Button)sender).Text;
                IslemSecildi = false;
            }

Burda farklı olarak kullandığımız kod (button)sender dir oda işlem yapılan butondaki texti atacak yani buton1.text de 1 vardı.bunu textboxa yollicak.Bunu teker teker 0 dan 9a kadar tüm rakam yazılı tuşlara yapıştırdık sıra geldi işlemlere.

3. İşlem seçildiği zaman, bir önceki girilen sayıyı tutan kodları yazalım.

 Islem = ((Button)sender).Text; // işlemi butonun text özelliğinden al
            //mesela text özelliğine * dediysek çarpma yapacak.
            try
            {//sayıya textboxdaki sayıyı aktar
                Sayi = double.Parse(txtSayi.Text);
                IslemSecildi = true;//bir işlem seçildini belirt
            }
            catch (Exception ex)
            {
                MessageBox.Show("Sayı düzgün formatta girilmedi");
            }
            finally
            {//texti boşalt
                txtSayi.Text = "";
                txtSayi.Focus();//yanıp sönen odak kısmını textboxa getir.

            }

İşlemler bir yana eşittir bir yana arkadaşlar.Eşittir için ayrı bir kod bloğu oluşturduk buyrunuz.

4. Eşittir düğmesine basıldığı zaman aritmetik operasyonu yapan kodları yazalım.

[ads1]
 switch(Islem) 
{//işlemi gör sayıyı al işleme sok kısaca bu
case "*":
Sayi *= double.Parse(txtSayi.Text);
 break;
case "/":
Sayi /= double.Parse(txtSayi.Text);
break;
case "-":
Sayi -= double.Parse(txtSayi.Text);
                break;
               
case "+":
Sayi += double.Parse(txtSayi.Text);
                break;
}
 txtSayi.Text = Sayi.ToString();

5. C (temizle) tuşuna basıldığı zaman, metin kutusunu temizleyen ve global değişkenleri başlangıç değerlerine getiren kodları yazalım.

             Sayi = 0;
            IslemSecildi = false;
            txtSayi.Text = "";
            txtSayi.Focus();

Bu kadar arkadaşlar.Proje dosyamızı üstte koydum soru ve sorunlarınızı yazabilirsiniz.Kendinize iyi bakın Allah’a(cc) emanet

Diğer yazılım makalelerimiz için

Facebook Grubumuz İçin Tıklayın

Yapılan Yorumlar

Bir Cevap Yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.