• 締切済み

Javaについて質問します。

全員のjudgeBMIの適用結果を表示させたいのですが 下から4行目のcalcBMIにエラーが出てしまいます。 どこを修正すればいいかわからなく困っています。 わかる方いましたら教えていただきたく質問しました。 public class Enshu14_3 { private static double calcBMI(double weights, double heights){ return(weights/(heights*heights)); } private static String judgeBMI(double bmi){ String result; if(bmi<18.5){ result="やせ"; }else if(30.0<=bmi){ result="高度肥満"; }else if(25.0<=bmi){ result="肥満"; }else{ result="標準"; } return result; } public static void main(String[] args){ double[] weights = {64.0,51.5,70.2,58.3,85.4}; double[] heights = {1.65,1.67,1.66,1.75,1.68}; for(int i=0; i<weights.length; i++){ System.out.println(i+"番目の人は"+judgeBMI(calcBMI(weights,heights))+"です。"); } } }

みんなの回答

  • ninoue
  • ベストアンサー率52% (1288/2437)
回答No.3

calcBMIはdoubleデータを期待しているのに、arrayデータを渡しているようです。 (weights[i], heights[i])

回答No.2

doubleに配列を渡してますから コンパイルエラーになるはずです。

  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.1

エラーの内容ぐらいは書いた方が良いと思うけど... 呼び出し側の引数は配列だけど、受取側は配列じゃないからでは。 呼び出し側で、配列そのものではなくて配列の要素を渡すようにしてみては。

関連するQ&A