C Sharp Programlama Dili/Akış kontrol mekanizmaları – if else yapısı
if else :
if else deyimi sayesinde belli bir koşul sağlandığında söz konusu komutlar çalıştırılır, o belli koşullar sağlanmadığında çalıştırılmaz ya da başka komutlar çalıştırılır.
Kullanılışı şu şekildedir:
if(koşul)
komut1;
else
komut2;
veya
if(koşul)
{
komutlar1
}
else
{
komutlar2
}
Yukarıdaki örneklerde eğer koşul sağlanırsa 1. komutlar, sağlanmazsa 2. komutlar çalıştırılır. if veya else’in altında birden fazla komut varsa bu komutları parantez içine almak gerekir. if veya else’in altında tek komut varsa bu komutları parantez içine almak gerekmez. Örnek bir program:
using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
int a=5, b=7;
if(a<b)
Console.Write("a b'den küçük");
else
Console.Write("a b'den küçük değil");
}
}
Başka bir örnek program:
using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
int a=5, b=7;
if(a<b)
{
Console.WriteLine("a b'den küçük");
Console.Write(a);
}
else
{
Console.WriteLine("a b'den küçük değil");
Console.Write(b);
}
}
}
if else yapılarında else kısmının bulunması zorunlu değildir. Bu durumda sadece koşul sağlandığında bir şeyler yapılacak, koşul sağlanmadığında bir şeyler yapılmayacaktır. Örnek:
using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
int a=5, b=7;
if(a<b)
Console.WriteLine("a b'den küçük");
}
}
if else bloklarının aşağıdaki gibi kullanımı da mümkündür:
using System;
class AkisKontrolMekanizmalari
{
static void Main()
{
Console.Write("Cinsiyetinizi girin (e, k): ");
char cins=Convert.ToChar(Console.ReadLine());
if(cins=='e')
Console.Write("Erkeksiniz");
else if(cins=='k')
Console.Write("Kızsınız");
else
Console.Write("Lütfen cinsiyetinizi doğru giriniz!");
}
}
Bu program kullanıcıdan cinsiyetini girmesi istemekte, eğer kullanıcının girdiği harf e ise ekrana Erkeksiniz yazmakta, eğer girdiği harf e değilse ise bu sefer kullanıcının girdiği harfi k mı değil mi diye incelemekte, eğer k girmişse ekrana Kızsınız yazmakta, bunların dışında bir harf girdiğinde de ekrana Lütfen cinsiyetinizi doğru giriniz! yazmaktadır. Bu şekilde bu bloklar daha da uzatılabilir. Yani else if satırının bir tane olması zorunlu değildir. Ancak tabii ki else satırının yalnızca bir tane olması gerekir. C# iç içe if else kullanılmasına izin verir:
if(koşul1)
{
if(koşul2)
komut1;
else
{
komut2;
komut3;
}
}
else
komut4;