ネストしたSwitch文
CoddyのC#ジャーニー「ロジックとフロー」セクションの一部。レッスン 11/66。
ネストされた 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;
}次の case へのフォールスルーを防ぐため、必ず break 文を含めてください。
適切なインデントを使用して、コードを読みやすく保つことを忘れないでください。
チャレンジ
中級calculatePriceというメソッドを作成します。このメソッドは次の処理を行います:
- 3つのパラメーターを受け取ります
- productType (string):"Electronics"、"Clothing"、または "Food" のいずれか
- productTier (string):"Basic"、"Premium"、または "Luxury" のいずれか
- basePrice (int):商品の開始価格
- 次のルールを適用した後の最終価格 (int) を返します
- Electronics の場合:
- Basic:基本価格に $50 を加算
- Premium:基本価格に $100 を加算
- Luxury:基本価格に $250 を加算
- Clothing の場合:
- Basic:基本価格に $10 を加算
- Premium:基本価格に $50 を加算
- Luxury:基本価格に $100 を加算
- Food の場合:
- Basic:基本価格を変更しない
- Premium:基本価格に $15 を加算
- Luxury:基本価格に $30 を加算
- その他の productType または productTier の場合は、基本価格を変更せずに返します
- Electronics の場合:
自分で試してみよう
public class CalculatePrice
{
// calculatePrice メソッドを実装する
public static int calculatePrice(string productType, string productTier, int basePrice)
{
// ここにコードを書いてください
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ロジックとフローのすべてのレッスン
自分で練習してみよう: C#オンラインコンパイラ