중첩 Switch 문
Coddy C# 여정의 논리 및 흐름 섹션에 포함된 레슨. 66개 중 11번째.
중첩된 switch 문을 사용하면 더 복잡한 의사 결정을 위해 하나의 switch 문을 다른 switch 문 안에 배치할 수 있습니다.
기본 중첩 switch를 만드세요:
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;
}내부 switch와 외부 switch에서 각 case를 항상 break 문으로 끝내세요. C#에서는 case가 다음 case로 이어지도록 허용하지 않으므로 break가 없으면 컴파일 오류가 발생합니다.
적절한 들여쓰기를 사용해 코드를 읽기 쉽게 유지하는 것을 잊지 마세요.
챌린지
중급calculatePrice라는 메서드를 작성하세요. 이 메서드는:
- 세 개의 매개변수를 받습니다:
- productType (문자열): "Electronics", "Clothing", "Food" 중 하나
- productTier (문자열): "Basic", "Premium", "Luxury" 중 하나
- basePrice (정수): 제품의 시작 가격
- 다음 규칙을 적용한 후 최종 가격(정수)을 반환합니다:
- Electronics인 경우:
- Basic: basePrice에 $50를 더합니다
- Premium: basePrice에 $100를 더합니다
- Luxury: basePrice에 $250를 더합니다
- Clothing인 경우:
- Basic: basePrice에 $10를 더합니다
- Premium: basePrice에 $50를 더합니다
- Luxury: basePrice에 $100를 더합니다
- Food인 경우:
- Basic: basePrice를 변경하지 않습니다
- Premium: basePrice에 $15를 더합니다
- Luxury: basePrice에 $30를 더합니다
- 그 밖의 제품 유형이나 등급이면 basePrice를 변경하지 않고 반환합니다
- Electronics인 경우:
직접 해보기
public class CalculatePrice
{
// calculatePrice 메서드를 구현하세요
public static int calculatePrice(string productType, string productTier, int basePrice)
{
// 여기에 코드를 작성하세요
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
논리 및 흐름의 모든 레슨
직접 연습해 보세요: 온라인 C# 컴파일러