質問: BMIの値を計算して"痩せすぎ・標準・太りすぎ"の判定をするプログラムを作りたいのですが、コンパイルはできたものの、いざ実行してみたら判定部分の文章(printMsg以下)が全く出てきませんでした。どこを修正すればいいのでしょうか? ``` import java.util.Scanner; public class BMIPrint{ public static double bmi(double h,double w){ double bmi=w/(h*h); return bmi; } public static void main(String[] args){ double h,w; Scanner sc=new Scanner(System.in); System.out.println("身長(m)を入力してください"); h=sc.nextDouble(); System.out.println("体重(kg)を入力してください"); w=sc.nextDouble(); System.out.println("BMIは"+bmi(h,w)); } public static void printMsg(double bmi){ if(bmi<18.5){ System.out.println("あなたは痩せすぎです"); } if((18.5<=bmi)&&(bmi<25.0)){ System.out.println("あなたは標準体型です"); } if(bmi>=25.0){ System.out.println("あなたは太りすぎです"); } } } ``` **実行結果** 身長(m)を入力してください 1.54 体重(kg)を入力してください 50 BMIは21.0828132906055 ↑のような結果になってしまいました。 プログラミング初心者なものでよく分かりません。 どなたかお願いします。
回答: `printMsg()`メソッドを呼び出していないことが原因です。 以下のように、修正してみてください。 ###### Before ``` System.out.println("BMIは"+bmi(h,w)); } ``` ###### After ``` double bmi = bmi(h, w); System.out.println("BMIは" + bmi); printMsg(bmi); } ```