Вычислить ИМТ, используя аргументы командной строки - PullRequest
0 голосов
/ 28 сентября 2018

первый вопрос здесь.Я должен использовать предыдущее назначение вычисления ИМТ и переформатировать его, чтобы принимать аргументы командной строки в качестве входных данных для роста и веса.

"Ваша программа должна получить вес и рост через main (String [] args), то есть ,, когда вы запускаете вашу программу, вы должны сделать следующее: java MyProgramName 180 5 7
где MyProgramName равноназвание вашей программы, 180 - это вес в фунтах, 5 - это футы, а 7 - значения в дюймах. Программа выведет значение BMI в окне терминала, как это было раньше (пункт f ниже). "

Я запутался в том, как вызывать аргументы в коде при выполнении операндов над ними.Вот мой оригинальный код:

'int weight;
int heightInInches;
int bmi;

Scanner keyboard = new Scanner(System.in);

System.out.print("Enter your weight in pounds: ");
weight = keyboard.nextInt();

System.out.print("Enter your height in inches: ");
heightInInches = keyboard.nextInt();

bmi = ((weight * 703)/(heightInInches * heightInInches));

System.out.println("Your height is " + heightInInches + " and your 
weight is: " + weight + " pounds");
System.out.println("Your BMI is " + bmi);'

Я видел нечто подобное, просто добавив два числа, но не понимаю, как изменить его в формуле BMI.

int sum = 0;
for (int i = 0; i < args.length; i++) {
sum = sum + Integer.parseInt(args[i]);
}
System.out.println("The sum of the arguments passed is " + sum);

Спасибо

1 Ответ

0 голосов
/ 28 сентября 2018

Ваш String[] args будет выглядеть примерно так: s: 1002 *

Таким образом, args[0] будет вашим весом.

args[1] будет heightInFeet (умножьте на 12 дляget heightInInches)

args[2] будет частью высоты в дюймах

Таким образом, код становится:

int weight = Integer.parseInt(args[0]);
int heightInInches = Integer.parseInt(args[1])*12 + Integer.parseInt(args[2]);
bmi = ((weight * 703)/(heightInInches * heightInInches));
...