Java入門【バトル表示⑧】ダウン判定

Java 初歩【IFとは】IF入門 768

今回はプログラミングに欠かせない「条件分析」を学習します。

条件分析は難易度2です。
未経験の方が躓きやすいポイントですので「100%理解できる」と、思わないでください。
挫折しないためには「10回~20回と学習を繰り返し」少しずつ理解を深めていく必要があります。

今回は「こんなことが出来るんだ」程度の 「紹介」 としてご覧ください。

Java入門【バトル表示⑦】整理整頓 の続編になります。

この動画は連載物です。以下の順にご覧ください。

  1. 【バトル表示①】パラメターの表示
  2. 【バトル表示②】変数の利用
  3. 【バトル表示③】文字と数値
  4. 【バトル表示④】ダメージ計算
  5. 【バトル表示⑤】ダメージの乱数化
  6. 【バトル表示⑥】魔法使いの攻撃
  7. 【バトル表示⑦】整理整頓
  8. 【バトル表示⑧】ダウン判定
  9. 【バトル表示⑨】勝利判定
IF分【条件分析イメージ】
○×問題
IF分【 条件分析とは 】2
RPGの場合

IF分【IF図解】2

IF分【-条件分析とは-】図解1

IFを使用してモンスターがダウンしているか判定します。

package stage2;

import java.util.Random;

public class Battle {

	public static void main(String[] args) {

		// プレーヤーパラメーター
		String p1 = "ゆうと";
		String p2 = "かぐら";
		
		// モンスターパラメーター
		String m1 = "おばけ";
		String m2 = "スライム";
		int hp1 = 60;
		int hp2 = 120;
		
		// ダメージ量
		int da1 = new Random().nextInt(100);
		int da2 = new Random().nextInt(200);

		// 戦闘開始
		System.out.println("モンスターが現れた!");
		System.out.println("--------------------------");
		System.out.println(m1 + "		HP:" + hp1);
		System.out.println(m2 + "	HP:" + hp2);
		System.out.println("--------------------------");
		System.out.println(p1+"の攻撃!");
		System.out.println(m1 + "は"+ da1 +"のダメージ");
		hp1 = hp1 -da1;
		
		System.out.println(p2+"の攻撃!");
		System.out.println(m1 + "は"+da2+"のダメージ");
		hp1 = hp1 -da2;
		System.out.println(m2 + "は"+da2+"のダメージ");
		hp2 = hp2 -da2;
		
		System.out.println("--------------------------");
		System.out.println(m1 + "		HP:" + hp1);
		System.out.println(m2 + "	HP:" + hp2);
		System.out.println("--------------------------");
		
		// おばけのHPが0以下だったら・・・・
		if( hp1 <= 0 ){
			System.out.println(m1 + "は倒れた!!");
		}
		// スライムのHPが0以下だったら・・・・
		if( hp2 <= 0 ){
			System.out.println(m2 + "は倒れた!!");
		}

	}

}

Java-初歩【IFとは】お題

合計ダメージが50以下の場合「余裕でほほえむ」処理追加します。
実行結果を出すために、入力内容の空欄を埋めてください。

Java 初歩【IFとは】お題 ヒント2

Java 初歩【IFとは】お題 解答2

package stage2;

import java.util.Random;

// ダウン判定
public class Battle {

	public static void main(String[] args) {

		// プレーヤーパラメーター
		String p1 = "ゆうと";
		String p2 = "かぐら";

		// モンスターパラメーター
		String m1 = "おばけ";
		String m2 = "スライム";
		int hp1 = 60;
		int hp2 = 120;

		// ダメージ量
		int da1 = new Random().nextInt(100);
		int da2 = new Random().nextInt(200);

		// 戦闘開始
		System.out.println("モンスターが現れた!");
		System.out.println("--------------------------");
		System.out.println(m1 + "		HP:" + hp1);
		System.out.println(m2 + "	HP:" + hp2);
		System.out.println("--------------------------");
		System.out.println(p1 + "の攻撃!");
		System.out.println(m1 + "は" + da1 + "のダメージ");
		hp1 = hp1 - da1;

		System.out.println(p2 + "の攻撃!");
		System.out.println(m1 + "は" + da2 + "のダメージ");
		hp1 = hp1 - da2;
		System.out.println(m2 + "は" + da2 + "のダメージ");
		hp2 = hp2 - da2;

		System.out.println("--------------------------");
		System.out.println(m1 + "		HP:" + hp1);
		System.out.println(m2 + "	HP:" + hp2);
		System.out.println("--------------------------");

		// おばけのHPが0以下だったら・・・・
		if (hp1 <= 0) {
			System.out.println(m1 + "は倒れた!!");
		}
		// スライムのHPが0以下だったら・・・・
		if (hp2 <= 0) {
			System.out.println(m2 + "は倒れた!!");
		}

		// 余裕判定(合計ダメージが50以下)
		if (da1 + da2 <= 50) {
			System.out.println(m1 + "は余裕でほほえんだ!");
		}
		if (da2 <= 50) {
			System.out.println(m2 + "は余裕でほほえんだ!");
		}
	}

}

ダウン判定とほぼ同じ内容ですので、コピペ + 修正で可能です。

※ 実行結果が同じなら、解答例と違ってもOKです。( 変数名や入力行数が違ってもOK )