私は、アレイを作成して塗りつぶした後、それらのデータを使ってコードを作成するという学校の仕事があります。私はBMIを計算し、BMIが正常で、BMIが正常である人の名前をコンソールに出力する必要があるかどうかを判断する必要があります。メソッドの引数を見つけることができません
私が立ち往生しているのは、名前を出力するメソッドを呼び出すときに、正しい引数が何であるかを知ることができません。他の問題があるかもしれませんが、その場合も私を修正してください。ここで
は私のコードです:
import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
class TreatedPerson {
String name = "";
int age;
int height;
int weight;
@Override
public String toString() {
return "Name: " + name + " \tAge: " + age + " \tHeight: " + height + " \tWeight: " + weight;
}
}
public class B1 {
static void fillTreatedPerson(ArrayList<TreatedPerson> treatedpeople, int db) {
Random rnd = new Random();
for (int i = 0; i < db; i++) {
TreatedPerson tp = new TreatedPerson();
tp.name = ("Szemely_" + (i + 1));
tp.age = rnd.nextInt(99 - 10 + 1) + 10;
tp.height = rnd.nextInt(200 - 150 + 1) + 150;
tp.weight = rnd.nextInt(150 - 40 + 1) + 40;
treatedpeople.add(tp);
}
}
static void outputTreatedPerson(ArrayList<TreatedPerson> treatedpeople) {
for (TreatedPerson tp : treatedpeople) {
System.out.println(tp);
}
}
static double BMI(TreatedPerson tp) {
return tp.weight/(tp.height * tp.height);
}
static boolean normalBMI(double bmi) {
boolean bmindex = false;
if (bmi > 18.5 && bmi < 24.99) {
return bmindex = true;
}
return bmindex;
}
static void ifnormalBMI(TreatedPerson tp, boolean normalBMI) {
if (normalBMI) {
System.out.println(tp.name);
}
}
public static void main(String[] args) {
ArrayList<TreatedPerson> treatedpeople = new ArrayList<>();
fillTreatedPerson(treatedpeople, 5);
outputTreatedPerson(treatedpeople);
ifnormalBMI();
}
}
BMIとは –
これは体質指数です –
あなたの問題は何か分かりません。あなたのメソッドはリストや人をとり、リストや人と呼んでいます...どこかでエラーが出ますか? – azurefrog