Altbilgi içeriğine atla
Iron Academy Logo
C# öğrenin
C# öğrenin

Diğer Kategoriler

C# Geçiş Durumu

[[academy-video-youtube({"vid": "ohsfmlfuSxA", "start_time": "0", "title": "C# Switch Case", "creator": "Layla Porter", "length": "20m 21s"})]]

C#'ta switch ifadesi, geliştiricilerin bir ifadenin değerine dayalı olarak birçok kod bloğundan birini çalıştırmasına olanak tanıyan güçlü bir kontrol akışı mekanizmasıdır. Tek bir değişkene karşı birden çok koşulun kontrol edilmesi gereken durumlar için özellikle kullanışlıdır. Operatörler, karşılaştırmalar ve mantıksal kontroller gibi çeşitli eylemleri eşleme ifadeleri üzerinde gerçekleştirmek için switch durumları içinde kullanılabilir.

Layla Porter, "C# for Beginners part 4 - Operators and Switches" adlı videosunda, operatörler ve switch ifadeleri üzerine odaklanarak, C# programlamadaki temel kavramları ele alıyor. Bu makale, onun açıklamalarını parçalayarak, switch ifadeleri ve operatörler hakkında videodan kod parçacıkları sağlayacaktır.

Operatörlere Giriş

C#'taki operatörler, verileri değiştirmek, değerleri karşılaştırmak ve durum değerlerine ve karşılaştırmalara dayalı kararlar almak için çok önemlidir. Layla, aritmetik, karşılaştırma ve mantıksal operatörler gibi farklı türlerdeki operatörleri açıklayarak başlar.

Konsol.ReadLine Kullanarak Kullanıcı Girişi

Layla, kullanıcı girdisini yakalamayı göstererek başlar Console.ReadLine() kullanarak. Bu yöntem, etkileşimli C# uygulamaları için temel olan konsoldan bir giriş satırı okur.

Console.WriteLine("Hello, please write any word:");
string word = Console.ReadLine();
Console.WriteLine("Hello, please write any word:");
string word = Console.ReadLine();

Ataç Operatörü

Yukarıdaki kod parçasında, Layla kullanıcı girdisinden elde edilen değeri word değişkenine saklamak için atama operatörünü (=) kullanır. İşte bir ayrıntı:

  • string word: string türünde word adlı bir değişken tanımlar.

  • word = Console.ReadLine(): Kullanıcı tarafından girilen (elde edilen Console.ReadLine()) değeri word değişkenine atamak için atama operatörünü (=) kullanır.

Bu bağlamda, atama operatörü, değişken word'nin değerini kullanıcının konsolda yazdığı şeye ayarlamak için kullanılır. Ataç operatörü programlamada temeldir çünkü değerleri değişkenlere depolayarak, bu değerlerin programın çalışması süresince kullanılmasını ve değiştirilmesini sağlar.

Aritmetik Operatörler

C#'ta aritmetik operatörler toplama, çıkarma, çarpma, bölme ve modül gibi temel matematiksel işlemleri gerçekleştirir. Bu operatörler basittir ve herhangi bir programlama dili için gereklidir. Layla, bunların basit matematik işlemleri olduğu ve gerçek matematik problemlerindeki değerleri tam olarak aynı şekilde döndüklerinden dolayı videosunda bunları ele almaz.

Karşılaştırma Operatörleri

C#'ta karşılaştırma operatörleri, değerleri karşılaştırmamıza ve bu karşılaştırmalara dayalı olarak kararlar almamıza olanak tanır. Layla, büyüktür (>), küçüktür (<), büyük veya eşit (>=), küçük veya eşit (<=), eşitlik (==) ve eşitsizlik (!=) operatörlerini tanıtır.

Koşullu Mantık İfadelerinde Karşılaştırma Operatörleri Kullanma

Layla Porter, videosunda, kullanıcı tarafından verilen bir kelimenin uzunluğunu belirlemek için C#'taki koşullu mantık kullanımına giriş yapar. O, 2:10'da bir if ifadesinin temel yapısını bir string türünün Length özelliğini kullanarak bir stringin uzunluğunu kontrol etmek için göstererek başlar. Bu özellik, dizgedeki karakter sayısını döndürür.

if (word.Length < 6)
{
    Console.WriteLine("That's a short word.");
}
if (word.Length < 6)
{
    Console.WriteLine("That's a short word.");
}

İlk koşullu kontrol, kelimenin uzunluğunun altı karakterden az olup olmadığını görmek için küçüktür (<) operatörünü kullanır. Koşul doğruysa, program "Bu kısa bir kelime." çıktısını verir. Kodun bu kısmı, daha kısa kelimeleri etkili bir şekilde kategorize etmeye yardımcı olur.

Daha sonra, 4:00'te Layla Porter bir else if ifadesi kullanarak büyük veya eşit (>=) operatörü ve mantıksal VE (&&) operatörünü kullanarak kombine koşullar kavramını tanıtır. Birleşik koşul, kelimenin uzunluğunun en az altı ama on birden küçük olup olmadığını kontrol eder. Her iki koşul da karşılanırsa, program "Bu orta uzunlukta bir kelime." çıktısını verir. Bu, kelimenin uzunluğuna dayalı daha kafa kullanarak kararlar vermek için birden fazla koşulun nasıl birleştirilebileceğini gösterir.

else if (word.Length >= 6 && word.Length < 11)
{
    Console.WriteLine("That's a medium length word.");
}
else if (word.Length >= 6 && word.Length < 11)
{
    Console.WriteLine("That's a medium length word.");
}

Son olarak, Layla, 4:40'da, önceki koşulları karşılamayan tüm durumları ele almak için else ifadesinin kullanılmasını açıklar. Kodun bu kısmı, on bir veya daha fazla karakter uzunluğunda olan kelimeler için "Bu uzun bir kelime." çıktısını verir. Else ifadesi kullanarak, önceki koşullarla yakalanmayan herhangi bir girişin uygun şekilde işlenmesi sağlanır.

else
{
    Console.WriteLine("That's a long word.");
}
else
{
    Console.WriteLine("That's a long word.");
}

Şimdi Layla, programı çalıştırır (5:15) ve yukarıdaki koşullu ifadeler ve karşılaştırma operatörleri kullanarak bazı kelimeleri kategorize eder:

Csharp Switch Case 1 related to Koşullu Mantık İfadelerinde Karşılaştırma Operatörleri Kullanma

Mantıksal Operatörler

Mantıksal operatörler &&, ||, ! C#'ta daha karmaşık karar verme mantığı oluşturmak için birden fazla koşulu birleştirmenize olanak tanır. Layla, 6:24'te, bu operatörlerin koşullu ifadeler yaratmak için nasıl birlikte çalıştığını açıklar.

Layla Porter, videosunda bir liste hayvanından tek kelimeyi ayırt etmeyi içeren bir mini oyun tanıtır: "köpek," "kedi" ve "altın balık." Altın balık su içinde yaşadığı ve memeli olmadığı için tek kelime olarak kabul edilir. Layla (6:55) kullanıcıdan Console.ReadLine() kullanarak bir seçim yapmasını istemeyle başlar ve ardından stringleri karşılaştırırken büyük-küçük harf hassasiyeti sorunlarını önlemek için girdinin küçük harfle olduğundan emin olur ToLower() metodunu kullanarak:

Console.WriteLine("Pick the odd one out - dog, cat, goldfish");
string oddOne = Console.ReadLine().ToLower();
Console.WriteLine("Pick the odd one out - dog, cat, goldfish");
string oddOne = Console.ReadLine().ToLower();

7:32'de Layla, kullanıcının girişini sistem ve önceden tanımlanmış hayvan listesi ile kontrol etmek için karşılaştırma operatörlerini kullanmayı açıklar.

if (oddOne != "dog" && oddOne != "cat")
{
    Console.WriteLine("You chose the odd one out!");
}
if (oddOne != "dog" && oddOne != "cat")
{
    Console.WriteLine("You chose the odd one out!");
}

Bu kod, inputun 'dog' ve 'cat'e eşit olmadığını kontrol etmek için eşit değildir (!=) operatörünü kullanır. Bu koşulları mantıksal VE (&&) operatörü ile birleştirerek, her iki koşulun da doğru olması gerektiğini garanti eder. Girdi ne "köpek" ne de "kedi" ise "altın balık" olmalı ve program "Tek kelimeyi seçtiniz!" çıktısını verir.

else
{
    Console.WriteLine("Better luck next time!");
}
else
{
    Console.WriteLine("Better luck next time!");
}

Kullanıcının girişi bu koşulu sağlamazsa, diğer bir deyişle giriş ya "köpek" ya da "kedi" ise else bloğu çalışır ve program "Bir dahaki sefere başarılar!" çıktısını verir.

Csharp Switch Case 2 related to Mantıksal Operatörler

Layla (8:30) mantıksal operatörlerin koşullu ifadelerde nasıl çalıştığını anlamanın önemini daha da açıklar. VE operatörü (&&) her iki koşulun da doğru olmasını gerektirir, oysa VEYA operatörü (||) sadece bir koşulun doğru olmasını gerektirir. 9:05'de Layla, bu operatörlerin programın davranışını nasıl değiştirebileceğini gösterir ve C#'ta mantıksal operatörler kullanırken incelikleri ve potansiyel tuzakları vurgular. Bu açıklama, izleyicilere programlarında koşullu lojik kullanmanın nasıl etkili olacağını anlamalarına yardımcı olur.

C# Switch Dava İfadelerine Giriş

Switch ifadeleri, C#'ta çok dallı karar verme uygulamak için daha okunabilir ve verimli bir alternatif sağlar, genellikle birden fazla if-else ifadesinden daha okunabilir ve etkilidir. C#'ta 'case c', switch ifadeleri içinde koşulları belirtmek için kullanılır ve karşılaştırmanın aynı türde değerler üzerinde çalışmasını sağlar.

Videoda (12:38) Layla Porter, bir if-else ifadesi kullanmaktan switch ifadesi kullanarak verilen bir kelimenin uzunluk kategorisini belirleme geçiş yapar. Switch ifadesinin kodu daha temiz ve daha verimli hale getirebileceğini açıklar.

Kod parçacığı şöyle görünür:

switch (word.Length)
{
    case < 6:
        Console.WriteLine("That's a short word!");
        break;
    case int length when 6 <= length && length < 11:
        Console.WriteLine("That's a medium length word!");
        break;
    default:
        Console.WriteLine("That's a long word!");
        break;
}
switch (word.Length)
{
    case < 6:
        Console.WriteLine("That's a short word!");
        break;
    case int length when 6 <= length && length < 11:
        Console.WriteLine("That's a medium length word!");
        break;
    default:
        Console.WriteLine("That's a long word!");
        break;
}

Layla, bir switch ifadesinin, değerlendirilen değişkenin olası bir değeri veya değer aralığını temsil eden birden fazla vakadan oluştuğunu açıklar. Bu durumda, değişken word.Length.

  1. Case < 6: İlk vaka, kelimenin uzunluğunun 6'dan küçük olup olmadığını kontrol eder. Bu koşul sağlanırsa, program "Bu kısa bir kelime!" çıktısını verir ve ardından switch bloğundan çıkmak için break ifadesini kullanır. Vakanın birden fazla bildirimi olabilir.

  2. Case int length when 6 <= length && length < 11: İkinci vaka daha karmaşıktır. C# 7.0'da tanıtılan bir desen eşleştirme özelliği kullanır. Durum, int length ile tanımlanır, ardından ek koşulları belirten bir when cümlesi gelir: uzunluk 6'dan büyük veya eşit ve 11'den küçük olmalıdır. Desenler eşleşirse, program 'Bu orta uzunlukta bir kelime!' çıktısını verir ve ardından switch bloğundan çıkar.

  3. Varsayılan: Daha önceki vakalardan hiçbiri sağlanmazsa, varsayılan vaka gerçekleştirilir. Bu, if-else yapısındaki else ifadesi gibi hareket eder. Bu durumda, program "Bu uzun bir kelime!" çıktısını verir ve switch bloğundan çıkar.

Layla (15:45), switch ifadesi kullanmanın bir if ifadesine kıyasla faydalı olabileceğini vurgular çünkü kodu daha okunabilir ve yönetilebilir hale getirir, özellikle birden fazla koşul ile uğraşırken. Ayrıca, C# derleyicisinin onları farklı bir şekilde optimize ettiğini belirterek, switch ifadelerinin daha verimli olabileceğini ve daha hızlı çalışabileceğini belirtir.

Switch İfadeleri (Desen Eşleme)

Switch ifadeleri, daha basit değer tabanlı kararlar için daha özlü bir sözdizimi sağlayan C#'ta daha yeni bir özelliktir. Layla Porter, yaklaşık 16:25'te, C#'ta "switch ifadesi" veya "desen eşleme switch" adı verilen modern bir switch ifadesini tanıtır. Bu tür bir switch ifadesi, kodu daha özlü ve okunabilir hale getirerek doğrudan bir değer döndürür.

17:00 civarında, if-else yapısını kullanarak bir switch ifadesi nasıl yeniden yazılacağını gösterir. Yapılacak işlemler yerine, switch ifadesi olan koşullara dayalı olarak bir değişkene bir değer atar. Örneğin, bu örnek:

// Example of Switch Expression
string message = word.Length switch
{
    < 6 => "That's a short word!",
    < 11 and >= 6 => "That's a medium length word!",
    _ => "That's a long length word!"
};

Console.WriteLine(message);
// Example of Switch Expression
string message = word.Length switch
{
    < 6 => "That's a short word!",
    < 11 and >= 6 => "That's a medium length word!",
    _ => "That's a long length word!"
};

Console.WriteLine(message);

Layla'ya (17:31) göre yukarıdaki kod hakkında:

  1. String message = word.Length switch: Bir string değişkeni mesajı başlatır ve word.Length üzerinde bir switch ifadesi başlatır.

  2. < 6 => 'Bu kısa bir kelime!': Eğer word.Length 6'dan küçükse, küçüktür operatörü < kullanarak 'Bu kısa bir kelime!' döndürür.

  3. < 11 ve >= 6 => 'Bu orta uzunlukta bir kelime!': Eğer word.Length 6 ile 10 arasında dahil ise, daha okunabilirlik için and kullanarak 'Bu orta uzunlukta bir kelime!' döndürür.

  4. _ => "Bu uzun bir kelime!": Alt çizgi, önceki koşullardan hiçbiri karşılanmazsa "Bu uzun bir kelime!" döndüren bir varsayılan vaka görevi görür.

Layla, bu sözdiziminin, okunabilirliği ve verimliliği artırmak için modern C# özelliklerinin bir parçası olduğunu vurgular. Switch ifadesi, birden fazla durumu kısaca ele almak için geleneksel if-else ifadelerine tercih edilir.

19:30'da kodu çalıştırır ve çıktısı if-else ile aynıdır:

Csharp Switch Case 3 related to Switch İfadeleri (Desen Eşleme)

Sonuç

Layla Porter'ın videosu, operatörler, koşullu ifadeler ve switch'e dair temel C# programlama konularını ele alarak yeni başlayanlar için sağlam bir temel sunar. Onun açıklamalarını ve örneklerini takip ederek, yeni başlayanlar verileri nasıl manipüle edebileceklerini ve program akışını C#'ta nasıl etkili bir şekilde kontrol edebileceklerini pratik bilgilerle kavrayabilirler.

Bu temel kavramları anlayarak ve sağlanan örneklerle pratik yaparak, C#'a yeni başlayanlar daha karmaşık programlama görevleri için sağlam bir temel edinebilirler. Daha fazla C# videosu için onun YouTube Kanalına göz atın.

Hero Worlddot related to C# Geçiş Durumu
Hero Affiliate related to C# Geçiş Durumu

Sevdiğiniz Şeyleri Paylaşarak Daha Fazla Kazanın

.NET, C#, Java, Python veya Node.js ile çalışan geliştiriciler için içerik oluşturuyor musunuz? Uzmanlığınızı ek gelire dönüştürün!

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara