- if-else Yapısı
if-else yapısı, program akışındaki kararların alınmasında kullanılan bir kontrol yapıdır. Bu yapı sayesinde, belirli koşulların sağlanıp sağlanmadığına göre farklı kod blokları çalıştırılabilir.
Örneğin, aşağıdaki örnekte kullanıcının yaşını kontrol eden bir program yazalım:
#include <iostream>
using namespace std;
int main() {
int yas;
cout << "Lütfen yaşınızı giriniz: ";
cin >> yas;
if(yas >= 18) {
cout << "Oy kullanabilirsiniz.";
} else {
cout << "Oy kullanamazsınız.";
}
return 0;
}
Yukarıdaki programda, kullanıcının yaşını isteyip, if-else yapısı ile yaşının 18’den büyük veya küçük olduğunu kontrol ediyoruz.
- Switch-Case Yapısı
Switch-case yapısı, çok sayıda koşulun kontrol edildiği durumlarda kullanılır. Bu yapıda, koşullar case etiketiyle tanımlanır ve switch ile kontrol edilir. Eğer bir koşul sağlanırsa, o case etiketi altında tanımlı olan kod bloğu çalıştırılır.
Örneğin, aşağıdaki örnekte kullanıcının verdiği sayının haftanın hangi gününe denk geldiğini belirleyen bir program yazalım:
#include <iostream>
using namespace std;
int main() {
int gun;
cout << "Lütfen 1-7 arasında bir sayı giriniz: ";
cin >> gun;
switch(gun) {
case 1:
cout << "Pazartesi";
break;
case 2:
cout << "Salı";
break;
case 3:
cout << "Çarşamba";
break;
case 4:
cout << "Perşembe";
break;
case 5:
cout << "Cuma";
break;
case 6:
cout << "Cumartesi";
break;
case 7:
cout << "Pazar";
break;
default:
cout << "Geçersiz sayı girdiniz.";
break;
}
return 0;
}
Yukarıdaki programda, kullanıcının girdiği sayı switch-case yapısı ile kontrol edilir ve sayının hangi güne denk geldiği ekrana yazılır.
- Döngüler (for, while, do-while)
Döngüler, belirli bir koşulu sağlayana kadar tekrarlanan kod bloklarını ifade etmek için kullanılırlar. C++ dilinde for, while ve do-while olmak üzere üç farklı döngü yapısı bulunmaktadır.
a. for Döngüsü
for döngüsü, belirli bir başlangıç değeri, bir bitiş değeri ve bir artış değeri kullanılarak tekrarlanan kod bloklarını ifade etmek için kullanılır.
Örneğin, aşağıdaki örnekte 1’den 10’a kadar olan sayıları ekrana yazdıran bir program yazalım:
#include <iostream>
using namespace std;
int main() {
for(int i = 1; i <= 10; i++) {
cout << i << " ";
}
return 0;
}
Yukarıdaki programda for döngüsü kullanılarak 1’den 10’a kadar olan sayılar ekrana yazdırılır.
b. while Döngüsü
while döngüsü, belirli bir koşulun sağlanıp sağlanmadığını kontrol ederek tekrarlanan kod bloklarını ifade etmek için kullanılır.
Örneğin, aşağıdaki örnekte kullanıcının verdiği sayının 0’a eşit olana kadar sürekli olarak iki katına çıkaran bir program yazalım:
#include <iostream>
using namespace std;
int main() {
int sayi;
cout << "Lütfen bir sayı giriniz: ";
cin >> sayi;
while(sayi != 0) {
sayi = sayi * 2;
cout << sayi << " ";
}
return 0;
}
Yukarıdaki programda while döngüsü kullanılarak, kullanıcının girdiği sayı sürekli olarak iki katına çıkarılır ve ekrana yazdırılır. Döngü, sayı 0 olduğunda sonlandırılır.
c. do-while Döngüsü
do-while döngüsü, döngü koşulunu sonradan kontrol eden bir yapıdır. Yani, kod bloğu en az bir kez çalıştırılır ve sonra koşul kontrol edilir.
Örneğin, aşağıdaki örnekte kullanıcının verdiği sayının faktöriyelini hesaplayan bir program yazalım:
#include <iostream>
using namespace std;
int main() {
int sayi, faktoriyel = 1;
cout << "Lütfen bir sayı giriniz: ";
cin >> sayi;
do {
faktoriyel = faktoriyel * sayi;
sayi--;
} while (sayi > 0);
cout << "Girilen sayının faktöriyeli: " << faktoriyel;
return 0;
}
Yukarıdaki programda, do-while döngüsü kullanılarak girilen sayının faktöriyeli hesaplanır ve ekrana yazdırılır.
Bu örneklerle birlikte, C++ dilindeki kontrol yapıları (if-else, switch-case, döngüler) konusu hakkında fikir sahibi olabilirsiniz.