Switch İfadesi
Coddy'nin C++ Journey'sinin Temeller bölümünün bir parçası. Ders 29 / 74.
switch ifadesi, çok yönlü bir if ifadesi gibidir. Tek bir koşulu değerlendirmek yerine, bir değişkenin değerini birden çok durumla karşılaştırır ve eşleşen durumla ilişkili kodu yürütür.
İşte bir switch ifadesinin temel yapısı:
switch (variable) {
case value1:
// variable value1'e eşitse çalıştırılacak kod
break;
case value2:
// variable value2'ye eşitse çalıştırılacak kod
break;
// ... daha fazla case
default:
// Hiçbir case eşleşmezse çalıştırılacak kod
}switchanahtar sözcüğünün ardından, parantez içinde test etmek istediğiniz değişken gelir.- Her
case, değişkenin olası bir değerini temsil eder. - Her
caseiçindeki kod, değişken o durumun değeriyle eşleşirse yürütülür.
breakifadesi çok önemlidir; bir case yürütüldükten sonraswitchyapısından çıkar. Bu ifade olmadan yürütme bir sonraki case'e “fall through” eder.defaultcase'i isteğe bağlıdır ve başka hiçbir case eşleşmediğinde yürütülür.
İşte bir örnek:
int day = 3;
std::string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... diğer günler için case'ler
default:
dayName = "Invalid day";
}Birden fazla case durumunu tek bir durumda da birleştirebilirsiniz:
int day = 3;
std::string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... diğer günler için case'ler
default:
dayName = "Invalid day";
}Görev
BaşlangıçBir ay numarası (Ocak için 1, Şubat için 2 vb.) alan ve ait olduğu mevsimi yazdıran bir program oluştur. Mantık için bir switch ifadesi kullan.
Mevsimler ve bunlara karşılık gelen aylar şunlardır:
- Winter: Aralık (12), Ocak (1), Şubat (2)
- Spring: Mart (3), Nisan (4), Mayıs (5)
- Summer: Haziran (6), Temmuz (7), Ağustos (8)
- Autumn: Eylül (9), Ekim (10), Kasım (11)
- Invalid month: diğer seçenekler için
Kendin dene
#include <iostream>
int main() {
int month;
std::cin >> month;
std::string season = "";
// Kodunuzu aşağıya yazın
std::cout << season << std::endl;
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüArtırma/AzaltmaSonradan Artırma/AzaltmaAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Giriş/Çıkış Temelleri
cout İfadesicin İfadesiString GirdisiÖzet - 120'ye KadarÖzet - Doğru veya YanlışKendi başına pratik yap: Online C++ derleyicisi