Anasayfa / C# WINDOWS FORM / C# Windows Form’da Operatörler

C# Windows Form’da Operatörler

C# ile Windows Forms (Masaüstü) uygulamaları geliştirirken, programınızın karar vermesi, matematiksel hesaplamalar yapması veya farklı verileri birbiriyle karşılaştırması gerekir. İşte tam bu noktada devreye operatörler girer. Operatörler, programlama dillerinde veriler (değişkenler) üzerinde çeşitli matematiksel, mantıksal veya karşılaştırma işlemleri yapmamızı sağlayan özel sembollerdir.

C# WINDOWS FORM OPERATÖRLER EĞİTİM VİDEOMUZ İÇİN TIKLAYIN

Bir alışveriş programında sepetteki ürünlerin fiyatını toplarken, bir kullanıcı giriş ekranında şifrenin doğruluğunu kontrol ederken veya bir butona kaç kez tıklandığını sayarken hep bu operatörleri kullanırız. Bu rehberde, C# dilindeki temel operatör türlerini ve bunları Windows Forms nesneleri (TextBox, Button, Label vb.) ile nasıl kullanacağınızı örneklerle öğreneceksiniz.

1. Aritmetiksel Operatörler

Aritmetiksel operatörler, günlük hayatta matematikte kullandığımız temel hesaplama işlemlerini gerçekleştiren sembollerdir.

  • Toplama (+): İki sayıyı toplar (Örn: 2 + 8).
  • Çıkarma (-): Bir sayıdan diğerini çıkarır (Örn: 8 - 2).
  • Çarpma (*): İki sayıyı çarpar (Örn: 8 * 2).
  • Bölme (/): Bir sayıyı diğerine böler (Örn: 8 / 2).
  • Mod Alma (%): Bir sayının başka bir sayıya bölümünden “kalan” sayıyı bulur. Örneğin 8 % 2 = 0 sonucunu verirken, 8 % 5 = 3 sonucunu verir. Çift/tek sayı bulma işlemlerinde (sayının 2’ye bölümünden kalan 0 ise çifttir) çok sık kullanılır.

Dikkat Edilmesi Gereken İki Önemli Nokta:

  1. Metin Birleştirme: Programlama dillerinde toplama operatörü (+) sadece sayıları toplamak için kullanılmaz. Metinsel (string) veri türüne sahip iki değişkenin arasına + konulduğunda, bu metinleri yan yana birleştirir. Örneğin; "Ahmet" + " Yılmaz" ifadesi ekrana "Ahmet Yılmaz" olarak yansır.
  2. Tip Dönüşümü (Convert): Windows Form’da TextBox nesnesinin içine sayısal bir değer girilmiş olsa bile, bilgisayar bunu bir “metin” (string) olarak algılar. Bu yüzden matematiksel işlem yapmadan önce mutlaka Convert.ToInt32() gibi metotlarla bu metni sayıya çevirmelisiniz.

Aritmetik Operatör Örneği: İki Sayıyı Toplama

Formunuzda 2 adet TextBox (sayı girmek için), 1 adet TextBox (sonucu göstermek için) ve 1 adet Button (İşlemi yapmak için) olduğunu varsayalım. Butonun Click (Tıklama) olayına şu kodu yazabiliriz:

private void btnTopla_Click(object sender, EventArgs e)
{
    int sayi1, sayi2, toplam;

    // TextBox'lardan gelen metinler sayıya dönüştürülüyor
    sayi1 = Convert.ToInt32(textBox1.Text);
    sayi2 = Convert.ToInt32(textBox2.Text);

    // Toplama operatörü ile hesaplama yapılıyor
    toplam = sayi1 + sayi2;

    // Bulunan sonuç tekrar metne çevrilerek ekrana yazdırılıyor
    textBox3.Text = toplam.ToString();
}

2. İşlem Önceliği (Matematiksel Kurallar)

Aynı kod satırında birden fazla aritmetiksel operatör kullanıldığında, sonuçların doğru çıkması için programın hangi işlemi önce yapacağını bilmeniz gerekir. Tıpkı matematikte olduğu gibi C# dilinde de bir işlem önceliği vardır.

  • Öncelikle parantez () içindeki işlemler yapılır.
  • Daha sonra Çarpma (*), Bölme (/) ve Mod Alma (%) işlemleri yapılır.
  • En son Toplama (+) ve Çıkarma (-) işlemleri gerçekleştirilir.
  • Aynı önceliğe sahip operatörler yan yana ise (örneğin hem çarpma hem bölme varsa) işlem soldan sağa doğru gerçekleştirilir.

Örneğin; 4 * 3 + 15 / 3 - 1 işleminde önce çarpma ve bölme yapılır (12 + 5 - 1), ardından toplama ve çıkarma ile sonuç 16 bulunur. Karmaşayı önlemek için işlemi önce yapılmasını istediğiniz bölümleri daima parantez içine almanız tavsiye edilir.

3. Karşılaştırma Operatörleri

Karşılaştırma operatörleri, iki değeri birbiriyle kıyaslamak için kullanılır ve geriye her zaman mantıksal bir sonuç, yani True (Doğru) veya False (Yanlış) döndürürler. Genellikle programın yol ayrımlarını belirleyen Karar İfadeleri (if-else yapıları) içerisinde kullanılırlar.

  • == (Eşitse): İki değer birbirine eşit mi diye bakar. (Örn: sayi1 == sayi2)
  • != (Eşit Değilse): İki değer birbirinden farklı mı diye bakar.
  • < (Küçükse): Soldaki değer sağdakinden küçük mü?
  • > (Büyükse): Soldaki değer sağdakinden büyük mü?
  • <= (Küçük veya Eşitse)
  • >= (Büyük veya Eşitse)

Karşılaştırma Operatörü Örneği: Ehliyet Yaş Kontrolü

Formumuzdaki TextBox’a yaşını giren bir kullanıcının ehliyet alıp alamayacağını kontrol edelim:

private void btnKontrol_Click(object sender, EventArgs e)
{
    byte yas = Convert.ToByte(textBox1.Text);

    if (yas > 17) // Büyüktür operatörü kullanıldı
    {
        MessageBox.Show("Ehliyet başvurusunda bulunabilirsiniz.");
    }
    else
    {
        MessageBox.Show("Yaşınız ehliyet almak için yeterli değil.");
    }
}

4. Mantıksal Operatörler

Bazen programımızda tek bir şartı değil, aynı anda birden çok şartı kontrol etmemiz gerekebilir. Örneğin bir sisteme giriş yaparken hem “Kullanıcı Adı” doğru olmalı VE “Şifre” doğru olmalıdır. Bu gibi durumları bağlamak için mantıksal operatörler kullanılır.

  • AND – VE (&&): Bağladığı şartların hepsinin doğru (True) olması gerekir. Şartlardan biri bile yanlışsa kod bloğu çalışmaz.
  • OR – VEYA (||): Şartlardan sadece birinin doğru olması, kodun çalışması için yeterlidir.
  • NOT – DEĞİL (!): Şartın tam tersini alır. True olan bir sonucu False, False olan bir sonucu True yapar. if (!(yas>=15)) şeklindeki bir kod, yaşın 15’ten büyük veya eşit olmadığı durumlarda çalışır.

İpucu: C# dilinde operatörlerin de kendi aralarında bir önceliği vardır. Bir şart ifadesinde AND (&&) operatörü, OR (||) operatörüne göre daha öncelikli olarak işleme alınır.

Mantıksal Operatör Örneği: Kullanıcı Giriş Ekranı

private void btnGiris_Click(object sender, EventArgs e)
{
    string kullanici = txtKullanici.Text;
    string sifre = txtSifre.Text;

    // Hem kullanıcı adı VE (&&) hem de şifre doğru olmak zorunda
    if (kullanici == "[email protected]" && sifre == "12345")
    {
        MessageBox.Show("Sisteme Başarıyla Giriş Yaptınız!");
    }
    else
    {
         MessageBox.Show("Hatalı Kullanıcı Adı veya Şifre!");
    }
}

5. Atama, Artırma ve Azaltma Operatörleri

C# dilinde değişkenlerin değerini değiştirmek için en temel operatör Eşittir (=) atama operatörüdür. Sağdaki değeri hesaplar ve soldaki değişkene aktarır. Ancak sürekli aynı değişkenin üzerine ekleme yapacaksak (örneğin bir sayaç yapıyorsak) bileşik atama veya artırma/azaltma operatörleri kullanılır.

  • Bileşik Atamalar:+=, -=, *=, /= şeklinde kullanılır.
    • Örnek: x = x + 5; yazmak yerine pratik olarak x += 5; yazılabilir.
  • Artırma (++) ve Azaltma (--): Bir değişkenin değerini sadece 1 artırmak veya 1 azaltmak için kullanılır. sayi++ komutu, sayi = sayi + 1 komutuyla tamamen aynı işi yapar. Döngü yapılarında (örneğin for döngüsü) çok sık karşımıza çıkar.

Atama Operatörü Örneği: Tıklama Sayacı

Forma yerleştirdiğimiz bir butona her tıklandığında ekrandaki TextBox içindeki sayıyı 1 artıran mini bir sayaç yapalım:

private void btnArtir_Click(object sender, EventArgs e)
{
    int sayi = Convert.ToInt32(textBox1.Text);

    // sayi = sayi + 1; yerine pratik kullanım:
    sayi++;

    textBox1.Text = sayi.ToString();
}

Özet

C# ve Windows Forms dünyasında operatörler, programlarımızın “düşünme ve hesaplama” yetenekleridir. Aritmetik operatörlerle maliyetleri hesaplayabilir, mantıksal ve karşılaştırma operatörleri sayesinde programınızın kullanıcının verdiği tepkilere göre zekice kararlar (if-else) almasını sağlayabilirsiniz. Yazılıma yeni başlayanların bu operatörleri ezberlemek yerine, yukarıdaki gibi küçük Form uygulamaları (sayaç, hesap makinesi, şifre ekranı) yaparak pratikle pekiştirmesi en doğru öğrenme yöntemidir. İyi kodlamalar dileriz!

Etiketlendi:

Bir Yorum

Cevap bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

DERSLER