İF YAPISI
İf ingilizce anlamı eğerdir. Bu komut  bir şarta göre iki ayrı işlem yapmamıza olanak sağlıyor. Çok önemli yapılardan biridir.
İf Yapısının Kullanımı:

if(koşulumuz){
işlemlerimiz
}
Örneğin ben kullanıcıdan 5 sayısını girmesini istedim ve 5 girdi. Sayıyı doğru yazdırmak için aşağıdaki satır gerekir.
if(sayi==5){
cout<<“Sayı doğru”;
}
NOT: Eşitlik tanımlarken iki tane eşittir kullanırız.
BAZI MANTIK OPERATÖRLERİ
İf konusunda işimize iki tane yarayacak mantık operatörü vardır.
&&    VE MANTIK OPERATÖRÜDÜR.
||       VEYA MANTIK OPERATÖRÜDÜR.
!=      EŞİT DEĞİLDİR DEMEKTİR.
Şimdi bu mantık operatörleriyle biraz çalışalım mesela iki sayı girdirelim. Bu sayılardan biri 5 ise şartımız sağlansın bunu şöyle ifade ederiz.
if(sayi1==5||sayi2==5)
{
cout<<“Şart sağlandı”;
}

Bu satırların ifade ettiği şudur birinci sayı 5 ise veya ikinci sayı 5 ise bu süslü parantez döngüsüne gir. Eğer ve operatörünü kullansaydık || yerine && olurdu ve iki sayınında 5 olması gerekirdi.
ELSE YAPISI 
Else yapısı if yapısının şartı sağlanmaması durumunda çalışır.
Mesela bir sınavda 100 alan öğrenciler bisiklet kazansın.
if(not==100){
cout<<“Bisiklet kazandınız”;
}else{
cout<<“Ödül kazanamadınız”;
}
Gördüğünüz gibi program önce if yapısına girer 100 almışsa koşul sağladığı için bisiklet kazandınız yazar ve else girmeden programa devam eder. Eğer 100 dışında bir not almışsa else çalışır ve ödül kazanamadınız yazar.
ELSE İF YAPISI
Birden fazla durumun çalışabilmesine olanak sağlar.
Örneğin 100 alan bisiklet 90 alan futbol topu 80 alan kalem kazansın bu böyle yazılabilir.
if(not==100){
cout<<“Bisiklet kazandınız”;
}else if(not==90){
cout<<“Top kazandınız”;
}else if(not==80){
cout<<“Kalem kazandınız”;
}else{
cout<<“Birşey kazanmadınız”;
}
Bu program çalıştığında eğer not 100 ise bisiklet kazandınız şartı sağlandığı için yazar ve diğer hiç bir else if koşullarına bakmadan devam eder. Eğer sağlamaz ise 90 olan koşula bakar eğer o sağlarsa top kazandınız yazar ve geri kalana bakmaz ama eğer oda sağlamazsa bu sefer 80 koşuluna bakar eğer not 80 ise kalem kazandınız yazar ve else bakmaz ama not 80 altında ise hiç bir koşulu sağlamadığı için else çalışır ve bir şey kazanamadınız yazar.
NOT:Bazen if yapılarında süslü parantez sürekli kullanılmaz.Böyle yazılan programlar karşınıza çıkabilir.Karışıklığı önlemek için sürekli yazmalısınız. Yazılımda size kolaylık sağlar hangi ifadelerin hangi if yapısına ait olduğunu kolay ayırt edebilirsiniz.
Şimdi bu yapılarla bir program yazmayı deneyelim.
Adı ahmet olarak kayıtlı şifresi 123 olan bir kullanıcının giriş yapmasını inceleyelim.
#include<iostream>
using namespace std;
int main(){
int sifre;
string isim;
cout<<“Lutfen adinizi giriniz:”;
cin>>isim;
cout<<“Lutfen sifrenizi giriniz:”;
cin>>sifre;
if(isim==”ahmet”&&sifre==123){
cout<<“Giris başarılı”;
}else if(isim!=”ahmet”&&sifre!=123){
cout<<“Kullanici adinizi ve sifrenizi yanlıs girdiniz”;
}else if(isim!=”ahmet”){
cout<<“Kullanıcı adinizi yanliş girdiniz”;
}else if(sifre!=123){
cout<<“Sifreyi yanlış girdiniz”;
}
Bu programı incelediğimizde önce isim ve kullanıcı adı değişkenlerini tanımladık sonra onları kullanıcıdan istedik daha sonra if yapılarıyla koşullandırdık. En önce if koşulu ikisi de doğruysa çalışır giriş başarılı der ve geri kalan if elseler bakmadan program devam eder. Birinci if çalışmaz ise else if olana geçer ordada ikiside yanlışsa koşulu var ikiside yanlışsa ikiside yanlış der ve geri kalan else iflere bakmaz. Eğer oda koşulu sağlamazsa bir sonraki else if koşuluna bakar orda ki koşul isimin yanlış olması koşul sağlarsa kullanıcıya isimi yanlış girdiğini söyler ve diğer else if koşuluna bakmaz ama oda yanlışsa son olana bakar koşul sağlarsa talimatları yapar oda sağlamıyorsa hiçbir şey yapmadan program çalışmaya devam eder.

HAZIRLAYAN: Onur YERAL – Elektrik Elektronik Mühendisi

Categories:

No responses yet

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir