Nested Switch Statements
Coddy'nin C# Journey'sinin Mantık & Akış bölümünün bir parçası — ders 11 / 66.
İç içe geçmiş switch ifadeleri, daha karmaşık karar verme süreçleri için bir switch ifadesini diğerinin içine yerleştirmenize olanak tanır.
Temel bir iç içe switch oluşturun:
string department = "Sales";
string level = "Senior";
switch (department)
{
case "Sales":
switch (level)
{
case "Junior":
Console.WriteLine("Sales Junior");
break;
case "Senior":
Console.WriteLine("Sales Senior");
break;
}
break;
case "IT":
switch (level)
{
case "Junior":
Console.WriteLine("IT Junior");
break;
case "Senior":
Console.WriteLine("IT Senior");
break;
}
break;
}Bir sonraki case'e geçişi (fall-through) önlemek için her zaman break ifadeleri ekleyin.
Kodunuzu uygun girintileme ile okunabilir tutmayı unutmayın.
Görev
OrtaŞu işlemleri yapan calculatePrice adında bir metot oluşturun:
- Üç parametre alır:
- productType (string): "Electronics", "Clothing" veya "Food"
- productTier (string): "Basic", "Premium" veya "Luxury"
- basePrice (int): Ürünün başlangıç fiyatı
- Şu kuralları uyguladıktan sonra nihai fiyatı (int) döndürür:
- Electronics için:
- Basic: Taban fiyata 50$ ekleyin
- Premium: Taban fiyata 100$ ekleyin
- Luxury: Taban fiyata 250$ ekleyin
- Clothing için:
- Basic: Taban fiyata 10$ ekleyin
- Premium: Taban fiyata 50$ ekleyin
- Luxury: Taban fiyata 100$ ekleyin
- Food için:
- Basic: Taban fiyatta değişiklik yok
- Premium: Taban fiyata 15$ ekleyin
- Luxury: Taban fiyata 30$ ekleyin
- Diğer tüm ürün türleri veya aşamaları için taban fiyatı değiştirmeden döndürün
- Electronics için:
Kendin dene
public class CalculatePrice
{
// calculatePrice metodunu uygulayın
public static int calculatePrice(string productType, string productTier, int basePrice)
{
// Kodunuzu buraya yazın
}
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık & Akış bölümündeki tüm dersler
1Multi-dimensional Arrays
2D Arrays BasicsDeclaring and Initializing 2DAccessing 2D Array ElementsNested Loops with 2D ArraysJagged ArraysCommon Matrix OperationsRecap - Multi-dimensional4Flow Control Techniques
Early ReturnsGuard ClausesJump Statements (goto)Break and ContinueFlatten Nested Conditionals7Logical Operators Advanced
Short-Circuit EvaluationConditional Logical OperatorsOperator PrecedenceRecap - Advanced Operators2Advanced Decision Making
Multiple ConditionsComplex Boolean LogicIf vs. Switch ComparisonNested Switch StatementsRecap - Advanced Decisions5Exception Handling
Try-Catch BasicsException TypesMultiple Catch BlocksWorking with FilesFinally BlockUsing vs. Try-FinallyCustom ExceptionsRecap - Error Handling3Loop Enhancements
Loop PerformanceIterating ComplexEach Loop TypeRefactoring LoopsRecap - Optimized Loops6Null Handling
Null Reference BasicsNullable Value TypesNull Checking PatternsDefensive ProgrammingRecap - Null Safety