İç İçe İf Kullanımı


Twitter'da Paylaş Favorilerime Ekle

İç içe if kullanımı

Bazı durumlarda bir şart gerçekleştiğinde başka bir şartı daha kontrol etmek gerekir. Bunun için de if yapısının ilgili yerinde başka bir if açılabilir.

Böyle durumlarda özellikle parantezlerin hatasız oluşturulmasına dikkat edilmelidir.

Aşağıdaki örnek yapıda dıştaki if yapısının hem birinci bloğunda, hem de else bloğunda birer if daha açılmıştır. İhtiyaca göre bu yapı daha uzun ya da kısa olabilir.

Örnek iç içe if yapısı:

 

if ( şart-1 )
{

if ( şart-A )
{
şart-1 ve şart-A gerçekleştiğinde yapılacak işlemler
}
else if ( şart-B )
{
şart-1 ve şart-B gerçekleştiğinde yapılacak işlemler
}
else
{
şart-1 gerçekleşip şart-A ve şart-B gerçekleşmediğinde yapılacak işlemler
}

}
else if ( şart-2 )
{

if ( şart-C )
{
şart-2 ve şart-C gerçekleştiğinde yapılacak işlemler
}
else if ( şart-D )
{
şart-2 ve şart-D gerçekleştiğinde yapılacak işlemler
}
else
{
şart-2 gerçekleşip şart-C ve şart-D gerçekleşmediğinde yapılacak işlemler
}

}
 

iç içe if örnekleri, if else örnekleri, if içinde if, else içinde if kullanımı

KONU İLE İLGİLİ ÖRNEKLER

İç içe if örneği

Kullanıcı üç metin kutusuna notlarını girsin. Bu notların ortalaması hesaplanıp "Geçti" veya "Kaldı" şeklinde sonuç yazılsın.

Kutulardan herhangi biri boş ise hata mesajı verilsin.

Kutulardan herhangi birine 0'dan küçük veya 100'den büyük sayı girilmiş ise de hata mesajı verilsin.

Öncelikle kutuların boş olup olmadığına bakmalıyız. Kutuların üçü de dolu ise değişkenlere sayıları alabiliriz. Ardından da sayıların 0 ile 100 arasında olup olmadığına bakmalıyız. 

Çözüm:

if(textBox2.Text=="" || textBox3.Text=="" || textBox4.Text=="")
{
MessageBox.Show("Not bilgisi eksik girildi.");
}
else
{
 
int a = int.Parse(textBox2.Text);
int b = int.Parse(textBox3.Text);
int c = int.Parse(textBox4.Text);
 
if (a < 0 || a > 100 || b < 0 || b > 100 || c < 0 || c > 100)
{
MessageBox.Show("Notlar hatalı girildi");
}
else
{
float ort = (a + b + c) / 3;
 
if (ort < 50)
{
label2.Text = "Kaldınız";
}
else
{
label2.Text = "Geçtiniz";
}
}
}
İç içe if örneği

İç içe if örneği

Yukarıda 1. resimde formun görüntüsü, 2. resimde ise combobox'ın açılmış hali görülmektedir.

Buna göre kullanıcıdan alınacak bilgilere göre giriş fiyatı hesaplanacaktır. Şartlar aşağıdaki gibidir:

Normal: İndirim yok, 5 TL

Öğrenci: %50 indirim, 2,50 TL. Yaşı 30'dan büyükse indirim yok.

Öğretmen: %30 indirim, 3,50 TL. Yaşı 20'den küçük ve 65'ten büyükse indirim yok.

Asker: %50 indirim, 2,50 TL. Yaşı 20'den küçük ve 40'tan büyükse indirim yok.

Engelli: %75 indirim, 1,25 TL

Yaşlı: %25 indirim, 3,75 TL. Yaşı 60'tan küçükse indirim yok.

Gazi: %100 indirim, 0 TL. Yaşı 20'den küçükse indirim yok.

Yukarıda belirtilen durumlara göre ücreti hesaplayan programı yazalım. Bu arada seçim yapılmamışsa da hata mesajı verilecektir.

private void button1_Click_1(object sender, EventArgs e)
        {
            int yasiniz = int.Parse(textBox2.Text);
 
            if (comboBox1.SelectedIndex == -1)
            {
                label1.Text = "Seçim yapmadınız.";
            }
            else if (comboBox1.SelectedIndex == 0)
            {
                label1.Text = "5,00 TL";
            }
            else if (comboBox1.SelectedIndex == 1)
            {
                if (yasiniz < 30)
                {
                    label1.Text = "2,50 TL";
                }
                else
                {
                    label1.Text = "5,00 TL";
                }
            }
            else if (comboBox1.SelectedIndex == 2)
            {
                if (yasiniz >= 20 && yasiniz <= 65)
                {
                    label1.Text = "3,50 TL";
                }
                else
                {
                    label1.Text = "5,00 TL";
                }
            }
            else if (comboBox1.SelectedIndex == 3)
            {
                if (yasiniz >= 20 && yasiniz <= 40)
                {
                    label1.Text = "2,50 TL";
                }
                else
                {
                    label1.Text = "5,00 TL";
                }
            }
            else if (comboBox1.SelectedIndex == 4)
            {
                if (yasiniz >= 60)
                {
                    label1.Text = "3,75 TL";
                }
                else
                {
                    label1.Text = "5,00 TL";
                }
            }
            else if (comboBox1.SelectedIndex == 5)
            {
                
                    label1.Text = "1,25 TL";
            }
            else if (comboBox1.SelectedIndex == 6)
            {
                if (yasiniz >= 20) label1.Text = "0,00 TL";
                else label1.Text = "5,00 TL";
            }
 
 
        }

 


YORUMLAR



Visual C# Dersine Ait Diğer Konular: