ここから本文です

javaのプログラムについて質問です

sno********さん

2017/6/2810:27:28

javaのプログラムについて質問です

どこを変えればいいかわかりません
javaは初心者です
javaのプログラムについて質問です
どこを、変えればいいかわかりません
javaは初心者です
package bmi;
public class BMI
{
public static void main(String argv[])
{
double shinchou;

double taijuu;
double bmi;
shincho=170.5;
taiju=57.6;
bmi=taiju/shincho*shincho;
System.out.print("BMI=");
System.out.println(bmi);

}
}
プログラムを打ち込み、間違いを修正したうえで、コンパイル、実行すること。必要に応じてデバッグする。

BMIの計算
BMI(Body Mass Index)はヒトの肥満度を表す指数
BMI=体重[kg]/(身長[m]*身長[m])
男性の場合は、BMI=22が標準とされている
以下のプログラムは間違っているので注意。間違い(エラーメッセージが出るとは限らない)を修正して、コンパイル実行すること。
電卓で検算してみよう。
①変数名の間違い
②優先順位の間違い
③単位の間違い

答 BMI=19.8140....

閲覧数:
66
回答数:
1

違反報告

ベストアンサーに選ばれた回答

tan********さん

2017/6/2818:01:46

まあまず、よく読めばすぐ分かる間違い部分として…
double shinchou;

shincho=170.5;
身長を表す変数の名前が、最初に宣言した時は「shincho"u"」だったのに、次に出てきた時には「shincho」になっていますね。
これが「①変数名の間違い」の事だと思います。


shincho=170.5;
taiju=57.6;
ここで、身長と体重の数値を、変数shinchoと変数taijuに入れているのはお分かりかと思います。
身長が「170.5m」と言う事は流石にないでしょうから、これは恐らく「170.5cm」という意味なのでしょう。

問題はその次の行です。
bmi=taiju/shincho*shincho;
ここでは、BMIの計算をしようとしています。
しかし、BMIの計算方法「BMI=体重[kg]/(身長[m]*身長[m])」と見比べてみると、間違っている点が二つある事がお分かりになるかと思います。

一つは、身長の単位がcmになってしまっているという事。
本来の計算式では、体重はkg、身長はmでなければならない筈です。
このプログラムの計算式だと、体重57.6キログラム、身長"170.5メートル"の細長い巨人のBMIを求める事になってしまいます。
予め、shinchoの単位をmからcmに直す必要があるでしょう。
これが「③単位の間違い」の事だと思います。

二つ目に、(身長[m]*身長[m])が括弧で括られていない事。
本来の計算式では、「体重[kg]/(身長[m]*身長[m])」となっています。
しかしプログラム内の計算式では、「taiju/shincho*shincho」となってしまっています。
体重を「身長×身長」で割るのか、「体重÷身長」に身長をかけるのかで、式の意味は違ってしまいます。
つまり、BMIを求める為の計算順序が間違っているという事です。
これが「②優先順位の間違い」の事だと思います。

この回答は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる