C# Karar Yapıları Switch Case

Yeni bir form oluşturuyoruz. ve formumuza bir adet textbox ve button koyalım.Textbox'ın name'ine txt_sayı yazalım.

Buttonun kod satırına

        private void button1_Click(object sender, EventArgs e)
        {
            int sayi = int.Parse(txt_sayi.Text);
            switch (sayi)
            {
                case 1:
                    MessageBox.Show("1");
                    break;
                case 10:
                    MessageBox.Show("10");
                    break;
                case 20:
                    MessageBox.Show("20");
                    break;
                default:
                    MessageBox.Show("hiçbiri");
                    break;
            }
        }

//Buttona tıklandığında textbox'da yazılan sayıyı kontrol ediyor. Case içine verdiğimiz değer(koşul) ile uyuyor ise case içine yazdığımız kodları çalıştırıyor. Hıçbir kosul sağlanmadığında defult altına yazdığımız kodlar çalışır.

Bir button,2 radiobutton ve textbox ekliyoruz.Radiobuttonların name'leri rb_ist ve rb_bursa.Text'leri İstanbul ve Bursa.TextBox name txt_ilce.

        private void button2_Click(object sender, EventArgs e)
        {
            string ilce = txt_ilce.Text.ToLower();
            if (rb_ist.Checked == true)//rb_ist checked özelliğinin true olup olmadığını kontrol ediyoruz.
            {
                switch (ilce)//switch ile txt_ilce icine yazılan ilceleri kontrol ediyoruz. Hangi ilce yazıldıysa o ilcenin bölgesini messagebox'da gösteriyoruz
                {
                    case "kadıköy":
                        MessageBox.Show("Anadolu Yakası");
                        break;
                    case "beşiktaş":
                        MessageBox.Show("Avrupa Yakası");
                        break;
                    default:
                        MessageBox.Show("Sistemde Kayıtlı Değil");
                        break;
                }
            }
            else if (rb_bursa.Checked == true)//rb_bursanın checked özelliğinin true olup olmadığını kontrol ediyoruz
            {
                switch (ilce)//switch ile txt_ilce icine yazılan ilceleri kontrol ediyoruz. Hangi ilce yazıldıysa o ilcenin bölgesini messagebox'da gösteriyoruz
                {
                    case "çekirge":
                        MessageBox.Show("Heykel");
                        break;
                    case "görükle":
                        MessageBox.Show("Nilüfer");
                        break;
                    default:
                        MessageBox.Show("Sistemde Kayıtlı Değil");
                        break;
                }
            }
            else
            {
                MessageBox.Show("Lütfen Sehir Seçiniz");
            }

        }


//Buttona tıkladığımızda hangi sehir seçilirse texbox'da yazdığımız ilcenin bölgesini gösteriyor. Eğer herhangi bir sehir seçilmez ise sehir seçiniz uyarısı veriyor.

C# Kontroller CheckBox,RaidoButton

Yeni bir form açıyoruz ve formumuza CheckBox ile Button ekliyoruz.

CheckBox

Buttonun kod satırına

private void button1_Click(object sender, EventArgs e)
{
if (checkBox1.Checked == true)
{
MessageBox.Show("Seçili");
}
else
{
MessageBox.Show("Seçili Değil");
}
}
//If ile checkBox'ın seçili olup olmadığını kontrol ediyoruz(Checked özelliği).Checked true ise seçili demektir.

Formumuza 2 Adet radiobutton, bir textbox ve button ekleyelim.Radiobuttonların name'leri rb_bay, rb_bayan ve textlerinde bay, bayan yazsın. textboxin name'i txt_isim. Button'un textinde ise göster yazalım.

RadioButton

Buttonun kod satırına

private void button2_Click(object sender, EventArgs e)
{
if (rb_bay.Checked == true)
{
MessageBox.Show(txt_isim.Text + " Bey");
}
else if (rb_bayan.Checked == true)
{
MessageBox.Show(txt_isim.Text + " Hanım");
}
else
{
MessageBox.Show("seçili değil");
}
}
//If ile rb_bay'ın checked(seçili) özelliğini kontrol ediyoruz. Eğer True(doğru) ise messagebox'da txt_isim'den gelen değer + bey yazıyoruz.
//Else if'de ise rb_bayan için checked'ı kontrol ediyoruz.
/Else'de iki durumda sağlanmaz ise(rb_bay veya rb_bayan seçilmez ise) seçili değil messajını gösteriyoruz.


Formumuza 2 adet checkbox ve bir button ekliyoruz. Checkboxların name'leri cb_ogrenci ve cb_programci, textleri ise Öğrence ve programcı olsun. Button'un text'inde Burs Kontrol yazalım.

Buttonun kod satırına

private void button3_Click(object sender, EventArgs e)
{
if (cb_ogrenci.Checked == true)
{
if (cb_programci.Checked == true)
{
MessageBox.Show("kazandınız");
}
else
{
MessageBox.Show("kazanamadınız");
}
//IF bloğunun içine ayrı bir if daha ekledik. Bu sayede cb_ogrenci checked durumunda cb_programcı'nın da chehcked olup olmadığını kontrol edebiliyoruz.

}
else if (cb_programci.Checked == true)
{
MessageBox.Show("kazanamadınız");
}

else
{
MessageBox.Show("seçili değil");
}
}

//If ile cb_ogrenci ve cb_programcı'nın checked özelliğini kontrol ediyoruz. Eğer ikiside tiklenmis ise kazandınız. Sadece biri tikli ise kazanamadınız uyarısı veriyor. Hiç biri tikli değil ise seçili değil uyarısı veriyor.


&& Ve Operatörü

Yeni bir button ekliyoruz.

        private void button4_Click(object sender, EventArgs e)
        {
            if (cb_ogrenci.Checked == true && cb_programci.Checked == true)
            {
                MessageBox.Show("kazandınız");
            }
            else if (cb_programci.Checked == true)
            {
                MessageBox.Show("kazanamadınız");
            }
            else if (cb_ogrenci.Checked == true)
            {
                MessageBox.Show("kazanamadınız");
            }
            else
            {
                MessageBox.Show("secili değil");
            }
        }

//Yukarda yaptığımız burs kazanma örneğnin farklı bir sekilde yapılışı. Burda IF içine yeni bir if yazmaktansa &&(ve operatörü) ile 2'li seçim durumunu kontrol ediyoruz.

C# Karar Yapıları, IF-ELSE IF-ELSE Devamı

If Else ile ilgili bir kaç örnek daha yapalım.

Yeni bir form açalım, button ve textbox ekleyelim.

Button ve TextBox'un özelliklerine bakalım. Form üzerinde buttona tıklayıp F4 yada sağ tıklayıp Properties dersek sol tarafta Properties penceresinin açıldığını görüceksiniz. burdan buttonun textini tekmi çiftmi ? yapalım.TextBox'ın ise Name özelliğini txt_sayi yapalım.Böylece kod ekranında txt_sayi yazarak çağırabiliriz. Bu bize çok uzun kodlar yazarken isteiğimiz textbox yada diğer nesnelere kolaylıkla ulaşmamızı sağlıyacaktır.



private void button1_Click(object sender, EventArgs e)
{
int sayi = int.Parse(txt_sayi.Text);
if (sayi %2 == 0)
{
MessageBox.Show("çift");
}
else
{
MessageBox.Show("tek");
}

//NOT:Sayıyı verilen değere bölünce kalanını göstermeye mod almak denir.Mod % operatöri ile alınır. Bir sayıyı 2'ye böldüğümüzde ya 1 kalanını yada 0 kalanını verir. Eğer 1 kalanını veriyor ise o sayı tektir.0 kalanını verir ise sayı çifttir.
//sayi değiskenine txt_sayi'dan değer alıyoruz. If ile bu sayının mod 2'sinin 0'a esit olup olmadığına bakıyoruz. Eğer esit ise messagebox'da çift yazıyor.Koşul sağlanmadıysa(else) tek yazıyor.

Yeni bir buton ve 2 adet textbox ekleyelim. Butonun textinde Aynımı yazsın. textboxlar ise txt_deger_1 ve txt_deger_2 olsun.

Bool Değiskeni

private void button2_Click(object sender, EventArgs e)
{
string deger1 = txt_deger_1.Text.ToLower();
string deger2 = txt_deger_2.Text.ToLower();
bool iceriyormu = deger1.Contains(deger2);
if (iceriyormu == true)
{
MessageBox.Show("Evet");
}
else
{
MessageBox.Show("Hayır");
}
}



//Not Bool değiskeni: Bool değiskeni içinde sadece true ve false barındıran bir değiskendir(0 ve 1 değerini alır).
//Not Contains: String fonksiyonunun özelliklerinden biridir. İki değerin içeriklerini kontrol etmekte kullanılır.
//2 adet string değisken tanımladım.bunların içine txt_deger_1 ve txt_deger_2 deki verileri atadık. ToLower olarak atamamızın sebebi, eğer txt_deger_1 veya 2'ye yazılanlardan biri buyuk harf olur ise sonuz hayır çıkıcaktır. Örneğin txt_deget_1'e osman yazdık, txt_değer_2'de Osman olarak yazarsak hayır cevabını alırdık.ToLower yaptığımız için txt'lerden gelen her değer deger1 ve deger2'ye küçük harf olarak atanacağı için doğru sonuca ulaşabiliriz.
//iceriyormu adında bir bool değisken tanımlıyoruz ve Constains ile 2 değerin esitliğini sorguluyoruz. Constains esit ise true değeri verir.Değil ise false.
//if ile iceriyormu'nun true olup olmadığını sorguluyoruz. Koşul sağlanırsa messagebox'da evet yazıyor.Sağlanmaz ise hayır.

C# Karar Yapıları, IF-ELSE IF-ELSE

IF ELSE

Yeni bir form açıyoruz ve içine button ekliyoruz.

private void button1_Click(object sender, EventArgs e)
{
int sayi = 3;
if (sayi > 2) ;
{
MessageBox.Show("sayı 2'den büyük");
}
else
{
MessageBox.Show("sayi 2'den küçük");
}
}

//sayi değiskenine 3 değerini atadık. if yapısı ile sayı değiskeninin 2'den büyük olup olmadığını kontrol ediyoruz. Eğer(if) sayi 2'den büyük ise messagebox'da gösteriyoruz. kosul sağlanmıoyor ise(else) messagebox'dan kosulun sağlanmadığını belirtiyoruz.

Formumuza yeni bir button ve textbox ekleyelim.

private void button2_Click(object sender, EventArgs e)
{
int sayi = int.Parse(textBox1.Text);

if (sayi > 10)
{
MessageBox.Show(sayi + " > " + "10");
}
else
{
MessageBox.Show(sayi + " < " + "10");

//Aynı işlemi sayi değerini textbox'dan alarak yaptık. Yeni bir button ve 2 adet textbox ekliyoruz.

private void button3_Click(object sender, EventArgs e)
{
int sayi1 = int.Parse(textBox2.Text);
int sayi2 = int.Parse(textBox3.Text);
if (sayi1 == sayi2)
{
MessageBox.Show("sayılar aynı");
}
else
{
MessageBox.Show("sayılar farklı");
}
}

//if içine farklı kosullarda ekleyebiliriz. Burda sayi1 ile sayı2'nin esitliğini kontrol ediyoruz(esitlik için 2 tane = kullanmalıyız.Tek adet olursa atamak için kullanılır)

If içine yazabileceğimiz kosul örnekleri

string isim=textBox1.Text;
if (isim.ToLower() == "ismet")
{
MessageBox.Show("isimler aynı");
}
else
{
MessageBox.Show("isimler farklı");
}

yada

string isim1 = textBox1.Text;
string isim2 = textBox2.Text;
if (isim1.ToLower() == isim2.ToLower())
{
MessageBox.Show("isimler aynı");
}
else
{
MessageBox.Show("isimler farklı");
}

ELSE IF

Yeni bir button ve textbox olusturalım.

private void button4_Click(object sender, EventArgs e) { int sayi = int.Parse(textBox4.Text); if (sayi <>
{
MessageBox.Show("sayi 10'dan kucuk");
}
else if (sayi == 10)
{
MessageBox.Show("sayi 10'a esit");
}
else
{
MessageBox.Show("sayi 10'dan küçük");
}
}

//TextBox4'ten sayımızı aldık. If ile kontrol ediyoruz. İlk if'de sayının 10'dan kucuk olup olmadığını kontrol ediyoruz, eğer kosul sağlanıyorsa burayı işleyip diğer kodları yok sayıyor. Kosul sağlanmadığında else if'e bakıyor. Burada sayının 10'a esit olup olmadığını kontrol ediyor. Bu kosul sağlanırsa messagebox işlenir, sağlanmaz ise else'ye geçer ve burayı gösterir.(ilk 2 kosul sağlanmadığı zaman direk else'yi gösteriyor)

C# Kontroller,TextBox

Yeni bir form açalım ve toolbox'tan bir adet button ve TextBox ekleyelim.


TextBox

Buttonun kod satırına

private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(textBox1.Text);
}

//MessageBox'da textbox'da yazılanı gösterir.TextBox'ın text özelliği

textBox1.Text = "çağrı";

//textbox'a değer atamak için.Form çalıstırıldığında textbox'da çağrı yazıcaktır.

string degisken = textBox1.text;
MessageBox.Show(degisken);

//MessageBox'da textbox'da yazılanı gösterir.Farklı bir yol.

Yeni Bir buton ve 2 adet textbox olusturalım. Butonnun kod satırına

int.Parse()

private void button2_Click(object sender, EventArgs e)
{
string sayi1 = textBox2.Text;
string sayi2 = textBox3.Text;
int sonuc = int.Parse(sayi1) + int.Parse(sayi2);
MessageBox.Show(sonuc.ToString());
}

//textBox2'nin textine yazılanı sayi1 degiskenine atadık.Aynı sekilde TextBox3'ün textini sayı2'ye atadık. Sonuç değiskeninde bunları topluyoruz. Dikkat edilmesi gereken, textbox sadece string değerleri alabilir. Toplama islemi yapmamız için bu string ifadeleri int'e çevirmemiz gerekiyor. Bunun için int.Parse( ) komutunu kullanıyoruz. MessageBox'da göstermek için herzaman olduğu gibi int değeri stringe çeviriyoruz.

TextBox string değer aldığı için Lenght, Substring, IndexOf gibi string fonksiyonlarını textbox içindede kullanabiliriz. Örnek olarak

MessageBox.Show(textBox1.Text.Substring(2,1);

//buttona bastığımızda textbox1'de yazan yazının 2. indexinden sonra 1 karakter gösteren messagebox olusturur.

Yeni bir button ve textbox olusturalım.Buttonun kod satırına

private void button3_Click(object sender, EventArgs e)
{
int uzunluk = textBox4.Text.Length;
int orta_harf = uzunluk / 2;
string sonuc = textBox4.Text.Substring(orta_harf, 1);
MessageBox.Show(sonuc);
}

//textbox4 içine yazılanın harf sayısını bulduk. Bu harf sayısını 2'ye bölerek ortadaki harfin indexini öğrendik. Substring ile bu indexten sonraki bir harfi sonuc değiskenine atadık. Messagebox ile gösterdik.

C# Programlama Dersi Başlangıç, Değikenler Üstünde İşlem Yapma

Toplama,Çıkarma,Çarpma ve Bölme

Formumuza yeni bir button oluşturuyoruz.

private void button2_Click(object sender, EventArgs e)
{
int sayi1 = 9;
int sayi2 = 23;
int sonuc = sayi1 + sayi2;MessageBox.Show(sonuc.ToString());
}

//int değişkeni içinde bir sayı tanımlıyoruz.
//int değiskeni içinde 2. sayımız.
//int değiskeni içinde tanımladığımız 2 sayıyı topluyoruz
//Topladığımız sayıları MessageBox içinde gösteriyoruz

Yeni bir buton olusturup çıkarma işmenine bakalım.

private void button3_Click(object sender, EventArgs e)
{
int sayi1 = 9;
int sayi2 = 23;
nt sonuc = sayi1 - sayi2;
MessageBox.Show(sonuc.ToString());
}

//tek fark topla(+) yerine çıkartma(-) yapmamız.

Çaprma işlemi için olusturduğumuz button

private void button4_Click(object sender, EventArgs e)
{
int sayi1 = 9;
int sayi2 = 23;int sonuc = sayi1 * sayi2;MessageBox.Show(sonuc.ToString());
}

Ve bölme için ayrı bir button.

private void button5_Click(object sender, EventArgs e)
{
int sayi1 = 9;
int sayi2 = 23;
int sonuc = sayi1 / sayi2;
MessageBox.Show(sonuc.ToString());
}

Bu işlemler daha fazla değisken kullanarakda yapabiliriz.

int sayi1 = 9;
int sayi2 = 23;
int sayi3 = 8;
int sonuc = sayi1 * sayi2+sayi3;
MessageBox.Show(sonuc.ToString());

//Bu sefer dikkat edilmesi gereken aynı matamatikte olduğu gibi çarpma işkeminin önceliği olduğudur. Eğer toplama işlemini önce yapmak istiyorsak ( ) içine almamız gerekiyor.

int sayi1 = 9;
int sayi2 = 23;
int sayi3 = 8;
int sonuc = sayi1 * (sayi2+sayi3);
MessageBox.Show(sonuc.ToString());

String Fonksiyonları.

Length Fonksiyonu.

Yeni bir button oluşturuyoruz.

private void button6_Click(object sender, EventArgs e)
{
string isim = "Kerem";
MessageBox.Show(isim.Length.ToString());
}

//Length fonksiyonu string bir ifadenin karakter sayısını öğrenmemize yarar. Int bir değer olduğu için MessageBox'da ToString ile string'e çeviriyoruz.

IndexOf

Her bir string ifade index değerine sahiptir.Örneğin

string isim ="Osman";

O:0,s:1,m:2,a:3,n:4 indexsine sahiptir.IndexOF ile bu indexleri öğrenebiliriz.

private void button7_Click(object sender, EventArgs e)
{
string isim = "Osman";
MessageBox.Show(isim.IndexOf("m").ToString());
}

//IndexOf yazdıktan sonra ( ) içine hangi harfin indexini öğrenmek istiyorsak onu yazıyoruz.Gelen değer int olduğu için ToString ile gösteriyoruz.


LastIndexOf

IndexOf en bastaki karakterden sayarak başlar. LastIndexOf ise en sondaki karakterden baslar.

Remove

private void button8_Click(object sender, EventArgs e)
{
string isim = "Yasemin";
MessageBox.Show(isim.Remove(3));
}

//Verdiğimiz index numarasından sonraki harfleri göstermez.

Substring

private void button9_Click(object sender, EventArgs e)
{
string isim = "network academy";
MessageBox.Show(isim.Substring(3,7));
}

//String ifadede girilen index aralıklarındaki harfleri gösterir.
//Not: Boşlukta bir karakter olarak tanımlanır.

ToUpper, ToLower

private void button10_Click(object sender, EventArgs e)
{
string isim = "Kazım";
isim.ToUpper;
MessageBox.Show(isim);
}

//string ifadenin harflerini büyük göstermeye yarar.ToLower ise küçük gösterir.

ToUpper ile Baş Harfi büyülten Program.

private void button11_Click(object sender, EventArgs e)
{
string isim = "çağrı";
string buyuk_harf = isim.Substring(0, 1);
string kalan_harf = isim.Substring(1, 4);
MessageBox.Show(buyuk_harf.ToUpper() + kalan_harf);
}

//isim adında string bir değisken tanımladık. buyuk_harf değiskenine isim.Substring ile isim değiskeninin ilk harfini tanımladık. kalan_harf'te ise geri kalan harfleri yine Substring ile tanımladık.MessageBox'da buyuk_harf'i ToUpper ile büyük görünmesini sağladık.

//Not:+ operatörü MessageBox'da kullanıldığında değiskenleri birleştirmeye yarar.

C# Programlama Dersi Başlangıç, İlk Programımız ve Değişkenlere Giriş

Merhaba,

Bloğumda Network Academy'de gördüğüm dersleri anlatmaya çalışacağım.Ayrıntılara girmeden kodlar üzerine bir anlatım olucak. Kodlar Visual Studio üzerinde yazılıcak.

İlk programımız.

File, New Project, Windows Form Aplication seçerek formumuzu olusturalım.



Forma toolbox'dan sürükle bırak yaparak bir button olusturalım. Buttona çift tıklayarak kod ekranına geçebiliriz.


private void button1_Click(object sender, EventArgs e)
{
    MessageBox.Show("Merhaba");
}

//MessageBox.Show program çalıştırıldığında messaj kutusu çıkartmaya  yarar. Parantez içinde " " ile yazı yazdığımızda ekranda gösterilir.Programı çalıştırmak için Debug, Star Debugging demeniz yada klavyeden f5'e basmanız gerekiyor.



Değiskenler.

String değiskeni.

String ad,soyad gibi harflerden olusan karakterleri yazabileceğimiz değisken türüdür.

//değisken türü strin. ad değiskenin adı. Çift Tırnak içinde değiskenin içeriğini yazıyoruz

string ad = "Çağrı";
MessageBox.Show(ad);

//Aynı yukardaki örnekte olduğu gibi MessageBox.Show içine yazılanı ekranda gösterir.Ad değiskenin içeriği Çağrı olduğu için ekrana Çağrı yazıcaktır.

Int değişkeni.

Int rakamları tutan değişken türümüz.

int sayi = 13;
MessageBox.Show(sayi.ToString());

//string'de olduğu gibi değiskenleri MessageBox.Show içinde gösterebiliriz ama MessageBox sadece string ifadeleri gösterdiği için Int bir değiskeni stringe çevirmemiz gerekiyor. Bunun için ToString komutunu kullanıyoruz.

İlk göstericeğimiz değikenler bunlar.Kodların hepsini eklediğimiz button içinde yazıyoruz

private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("Merhaba");
string ad = "Çağrı";
MessageBox.Show(ad);
int sayi = 13;
MessageBox.Show(sayi.ToString());
}

Program çalıstığında 3 defa MessageBox çıkıcaktır ve ilkinde Merhaba, diğerinde Çağrı ve en sonuncuda 13 yazıcaktır.