学科(Java基礎)⑥

1.命令文(Method)とは

Math.max(a,b) //2つの引数の大きい方を返す
public class Sample{
  public static void main(String[] args){
    int a=3,b=5;
    int m=Math.max(a,b);
    System.out.println("a:"+a+",b:"+b+"大きい方は"+m);
  }
}

2.様々なメソッドと活用例

public class Sample {
	public static void main(String[] args) {
		System.out.println("あなたの名前を入力してください");
		String name=new java.util.Scanner(System.in).nextLine();
		System.out.println("あなたの年齢を入力してください");
		int age=new java.util.Scanner(System.in).nextInt();
		System.out.println("ようこそ"+age+"歳の"+name+"さん");	
	}
}

3.占いアプリの作成

public class Fortunes{
	public static void main(String[] args){
		System.out.println("ようこそ占いの館へ");
		System.out.println("あなたの名前を入力してください");
		String name=new java.util.Scanner(System.in).nextLine();
		System.out.println("あなたの年齢を入れてください");
		String ageString=new java.util.Scanner(System.in).nextLine();
		int age=Integer.parseInt(ageString);
		int fortune=new java.util.Random().nextInt(4);
		fortune++;
		System.out.println("占いの結果が出ました!");
		System.out.println(age+"歳の"+name+"さん、あなたの運気番号は"+fortune+"です。");
		System.out.println("1:大吉2:中吉3:吉4:凶");
	}
}

4.BMIアプリ、ショッピングアプリの作成
5.たこ焼きアプリの作成

作ってみよう

●BMIアプリ

BMI測定
あなたの身長を入れてください(cm)>170 [enter]
あなたの体重を入れてください(kg)>70.2 [enter]
あなたのBMIは24.290657439446367です。

解答例

public class BmiApp{
	public static void main(String[] args){
		System.out.println("BMI測定");
		System.out.print("あなたの身長を入力してください(cm)>");
		double height=new java.util.Scanner(System.in).nextDouble();
		System.out.print("あなたの体重を入れてください(kg)>");
		double weight=new java.util.Scanner(System.in).nextDouble();
		//bmiは体重(kg)/(身長(m)*身長(m))
		double bmi=weight/(height/100*height/100);
		System.out.println("あなたのBMIは"+bmi+"です");
	}
}

●ショッピングアプリ

リンゴ(100)円)>5 [enter]
バナナ(30)円)>4 [enter]
合計金額は669円(税込み)

解答例

public class Shopping{
	public static void main(String[] args){
		final double TAX=1.08;
		int apple=100;
		int banana=30;
		System.out.print("リンゴ("+apple+")円)>");
		int appleNum=new java.util.Scanner(System.in).nextInt();
		System.out.print("バナナ("+banana+")円)>");
		int bananaNum=new java.util.Scanner(System.in).nextInt();

		int price=(int)((apple*appleNum+banana*bananaNum)*TAX);
		System.out.println("合計金額は"+price+"円(税込み)");
	}
}

●好きな言葉は?

あなたの好きな言葉を教えてください>経験にマイナスなし [enter]
「経験にマイナスなし」っていい言葉ですよね!私も好きです。

解答例

public class FavoriteWord{
	public static void main(String[] args) {
		System.out.print("あなたの好きな言葉を教えてください>");
		String word=new java.util.Scanner(System.in).nextLine();
		System.out.println("「"+word+"」っていい言葉ですよね!私も好きです。");
	}
}

●たこ焼き
以下の処理を実現せよ。なお割引率は1~3割のランダム、消費税は8%,端数は切り捨てとする。

たこ焼き(500円)を何パック買いますか>5
5パックですね。ありがとうございます。
おや、チャンスタイムのようです。エンターキーを押してください> [enter]

おめでとうございます!2割引です!!
合計金額は2160円(税込み)です。

解答例

public class Takoyaki{
	public static void main(String[] args) {
		final double TAX=1.08;
		int takoPrice=500; //たこ焼きの単価
		System.out.print("たこ焼き("+takoPrice+"円)を何パック買いますか>");
		int takoNum=new java.util.Scanner(System.in).nextInt();  //たこ焼きの個数
		System.out.println(takoNum+"パックですね。ありがとうございます。");
		System.out.println("おや、チャンスタイムのようです。エンターキーを押してください>");
		new java.util.Scanner(System.in).nextLine(); //入力待ちで停止。エンターで進む。
		int discount=new java.util.Random().nextInt(3)+1; //1~3の割引率をランダムに設定
		System.out.println("おめでとうございます!"+discount+"割引です!!");
		int price=(int)(takoPrice*takoNum*(1-discount/10d)*TAX); //金額を計算
		System.out.println("合計金額は"+price+"円(税込み)です。");
	}
}