★ 基本

条件分岐を使うことで、様々なシチュエーションに対応した挙動が実装できます。

int age = 25;

if(age >= 20){
  Console.WriteLine("お酒が飲めます");
} else {
  Console.WriteLine("飲酒は二十歳になってから");
}

if文のかっこの中には条件式を入れ、その条件式が当てはまる場合のみ処理が実行されます。 else文は反対に、条件式が当てはまらない場合のみ処理を実行します。

else if文を使えば、if文が実行されなかった場合の条件分岐ができます。

int score = 75;

Console.WriteLine(score + "点");
if(score >= 90){
  // scoreが90以上
	Console.WriteLine("余裕で単位取得です");
}else if(score > 80) {
  // scoreが80以上90未満
  Console.WriteLine("普通に単位取得です");
}else if(score >= 60){
  // scoreが60以上80未満
	Console.WriteLine("なんとか単位取得です");
}else {
  // scoreが60未満
	Console.WriteLine("残念ながら落単です");
}

条件式には以下のようなものがあります。 条件式の結果はbool型というtrueかfalseの変数で返されます。 条件式が当てはまった場合はtrue、条件式が当てはまらない場合はfalseとなります。

// 2つの値は等しいか?
Console.WriteLine(100 == 100); // true
Console.WriteLine(100 == 40);   // false

// 〇〇より上か?
Console.WriteLine(15 > 5);     // true
Console.WriteLine(15 > 25);    // false

// 〇〇より下か?
Console.WriteLine(7 < 24);     // true
Console.WriteLine(7 < 2);    // false

//より上 vs 以上
Console.WriteLine(50 > 50); // false
Console.WriteLine(50 >= 50); // true

//未満 vs 以下
Console.WriteLine(20 < 20); // false
Console.WriteLine(20 <= 20); // true

これを活用することで、条件分岐ができるようになるわけです。

補足

if文はかっこの中がtrueの場合必ず処理を実行します。 逆にかっこの中がfalseの場合処理は絶対に実行されません。

if(true){
  Console.WriteLine("この処理は必ず実行されます");
}

if(false){
  Console.WriteLine("この処理は絶対に実行されません");
}

★ 実践

例)買い物の際、お金が足りなかった場合の処理

int money = 100;
int cola_price = 150;

Console.WriteLine(money);
if(money < cola_price) {
  // お金がない場合
  Console.WriteLine("お金が足りません");
} else {
  // お金がある場合
  money = money - cola_price;
  Console.WriteLine("コーラを買いました");
}
Console.WriteLine(money);

結果として「お金が足りません」と出るはずです。 この場合お金が差し引かれることもありませんし、商品が購入されることもありません。

例)プレイヤーのHP