プロが教えるわが家の防犯対策術!

点線以下のプログラムです。①、②を教えてください。
①この部分でBMIを求める部分を引数が配列ではない関数を作って書き換えを教えてください。

※配列全体ではなく、height[i]、weight[i]を渡す

②配列とその要素数を渡してその配列値の平均値を返す関数を作って置き換えてください。

※関数定義内ではNUMBERを使わないで。

ーーーーーーーー上部省略ーーーーーーーー
}

 

              /* BMI平均値の計算 */

              mean_bmi = 0;

              for (i = 0; i < NUMBER; i++) mean_bmi += bmi[i];

              mean_bmi = mean_bmi / NUMBER;

 

              /* 結果の出力 */

              printf("\nカルテ番号 身長[cm] 体重[kg] BMI\n");

              for (i = 0; i < NUMBER; i++)

                            printf("%8d %8.1f %8.1f %10.2f\n", id[i], height[i], weight[i], bmi[i]);

              printf("\nBMI平均値:%4.2f\n", mean_bmi);

 

              return 0;

}

A 回答 (1件)

/* ① */


double foo(double height, double weight) {
 /* require math.h */
 return weight/pow(height, 2.0);
}

/* ② */
double bar(double array[], double N) {
 double acc = 0.0;
 for (int i = 0; i < N; i++) {
  acc += array[i];
 }
 return acc/N;
}
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!