C++ If, Else If ve Else ile Koşulları Yönetme (Visual Studio 2022)

  • 20
  • (1)
  • (5)
  • 08 Eyl 2024

if Kullanımı

if komutu ile belli bir koşul doğrulanırsa çalışacak komutlar yazılır.


if (koşul) {
    koşul doğru ise çalışacak komutlar
}

Aşağıdaki basit örnek ile girilen iki sayıdan ilki küçük ise ekrana metin yazdırılacaktır.


#include <iostream>
#include <locale>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Turkish");
	cout << "İlk sayıyı girin: ";
	int a;
	cin >> a;
	cout << "İkinci sayıyı girin: ";
	int b;
	cin >> b;
	if (a < b) {
		cout << "İlk sayı ikinciden küçüktür\n\n";
	}
}

Ekrana İlk sayı ikinciden küçüktür yazdırılacaktır.

if ile Beraber else if ve else Kullanımı

if komutunun koşulu ile beraber diğer koşulları denetlemek için else if komutu kullanılır. Bütün koşulların yanlış olduğu durum için ise else içerisindeki komutlar çalıştırılır.


if (koşul1) {
    koşul1 doğru ise çalışacak komutlar
}
else if (koşul2) {
    koşul2 doğru ise çalışacak komutlar
}
else if (koşul3) {
    koşul3 doğru ise çalışacak komutlar
}
else {
    koşul1, koşul2 ve koşul3 koşullarının
    hiçbiri doğru değilse çalışacak komutlar
}

Aşağıdaki örnekte girilen iki sayının hangisinin küçük olduğu veya eşit oldukları koşullarına göre if yapısı kodlanmıştır.


#include <iostream>
#include <locale>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Turkish");
	cout << "İlk sayıyı girin: ";
	int a;
	cin >> a;
	cout << "İkinci sayıyı girin: ";
	int b;
	cin >> b;
	if (a < b) {
		cout << "İlk sayı ikinciden küçüktür\n\n";
	}
	else if (b < a) {
		cout << "İkinci sayı ilkinden küçüktür\n\n";
	}
	else {
		cout << "İki sayı birbirine eşittir\n\n";
	}
}

Koşulların Birbirine Bağımlılığı

Bazen birden fazla koşulu denetlerken bu koşulların birbirlerine olan bağlılığı doğru anlaşıldıktan sonra if koşulları ile kodlama yapılmalıdır.

Mesela


if (koşul1) {
    koşul1 doğru ise çalışacak komutlar
}
else if (koşul2) {
    koşul2 doğru ise çalışacak komutlar
}
else if (koşul3) {
    koşul3 doğru ise çalışacak komutlar
}

Yukarıdaki kodlamada koşul1 doğru ise ilk if içerisinde bulunan kodlar çalışacaktır. Diğer koşullar hiçbir şekilde denetlenmeyecektir.

Eğer koşul1 yanlış ama koşul2 doğru ise hiçbir surette koşul3 denetlenmeyecektir. koşul2 içerisindeki kodlar çalışacaktır.

Bazen hem koşul1 hem de koşul2'nin doğru olduğu durumlar söz konusu olabilir. Bu durumda else if kullanılırsa sadece ilk doğrulanan koşulun içerisinde bulunan komutlar çalışır.

Mesela,


#include <iostream>
#include <locale>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Turkish");
	cout << "Bir sayı girin: ";
	int a;
	cin >> a;
	if (a < 10) {
		cout << "Sayı bir basamaklıdır\n\n";
	}
	else if (a < 100) {
		cout << "Sayı iki basamaklıdır\n\n";
	}
	else if (a < 1000) {
		cout << "Sayı üç basamaklıdır\n\n";
	}
	else if (a < 10000) {
		cout << "Sayı dört basamaklıdır\n\n";
	}
	else {
		cout << "Sayı beş veya daha fazla basamaklıdır\n\n";
	}
}

Eğer 5 sayısını girerseniz, a < 10, a < 100, a < 1000, a < 10000 koşullarının hepsini doğrular. Ancak ilk doğrulanan koşul a < 10 olacağı için sadece o koşula bağlı komutlar çalışır. Diğer koşullar denetlenmeden bile if yapısının tamamı sonlandırılır. Ve ekrana verilecek çıktı şu şekilde olur.

cpp project visual studio c++

Eğer 804 sayısını girerseniz a < 10, a < 100 koşulları sırayla denetlenecektir ve yanlış olduğu için içlerindeki kod satırlarına girilmeyecektir. a < 1000 koşulu doğrulandığında ise bu koşulun içindeki kod satırları çalışacaktır. Sonraki koşul doğru olsa bile denetleme yapılmayacaktır.

cpp project visual studio c++

Ancak bazı durumlarda bu koşulların tamamının denetlenmesini isteyebilirsiniz. Mesela,


#include <iostream>
#include <locale>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Turkish");
	cout << "Bir sayı girin: ";
	int a;
	cin >> a;
	if (a < 10) {
		cout << "Sayı ondan küçüktür\n\n";
	}
	if (a < 100) {
		cout << "Sayı yüzden küçüktür\n\n";
	}
	if (a < 1000) {
		cout << "Sayı binden küçüktür\n\n";
	}
	if (a < 10000) {
		cout << "Sayı on binden küçüktür\n\n";
	}
}

Yukarıdaki örnekte bütün if yapıları birbirinden farklı olduğu için her biri ayrı ayrı denetlenir. Yani koşullar birbirine bağımlı değildir.

Eğer girilen sayı 54 olursa doğrulanan her koşulun içerisindeki satırlar çalıştırılacaktır.

cpp project visual studio c++
İlişkili İçerikler

C++ dili ile ilk programınızı yazmak için ücretsiz olan Dev-Cpp uygulamasını indirip kurabilirsiniz. Dev-Cpp kendi editörü ve derleyicisi ile yazdığınız kodları rahatlıkla çalıştıracaktır.

Bu makale içerisinde Visual Studio 2022 üzerinde C++ konsol uygulaması oluşturup, üzerinde değişik örnekler denenmektedir. İnceleyip uygulayabilirsiniz.

C++ ile switch case koşullarının nasıl kullanıldığını bu içerikte inceleyip uygulayabilirsiniz.

Paylaşın
Etiket Bulutu