Кубики куются на кухне

Summary
var weight = 5;
var length = 60;
var age = 5;
var activityRate = 1.725;
var calorieRate;
var proteins;
var fats;
var carbohydrates;
calorieRate = Math.round((88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age)) * activityRate);
proteins = Math.round(calorieRate / 100 * 40);
fats = Math.round(calorieRate / 100 * 25);
carbohydrates = Math.round(calorieRate / 100 * 35);
1 лайк

Мой вариант.

var weight = 5;
var length = 60;
var age = 5;
var activityRate = 1.725;

var metLevel = 88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age);
var calorieRate = Math.round(metLevel * activityRate);
var proteins = Math.round(calorieRate * 0.4);
var fats = Math.round(calorieRate * 0.25);
var carbohydrates = Math.round(calorieRate * 0.35);

Просо слегка сократил подсчёт процентов.

Я сделал так))

var weight = 5;
var length = 60;
var age = 5;
var activityRate = 1.725;
var metabolism = 88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age);
console.log(metabolism);
var calorieRate = Math.round(metabolism * activityRate);
console.log(calorieRate);
var proteins = Math.round(calorieRate * (40 / 100));
console.log(proteins);
var fats = Math.round(calorieRate * (25 / 100));
console.log(fats);
var carbohydrates = Math.round(calorieRate * (35 /100));
console.log(carbohydrates);

Привет всем!
подсткажите плиз где ошибка.

var weight = 5;
var length = 60;
var age = 5;
var activityRate = 1.725;

//уровень метаболизма
var metabolizm = 88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age);

//Норма калорий
var calorieRate = Math.round(metabilizm * activityRate);

//Калорийность
var proteins = Math.round(calorieRate * 0.40);

//Жиры
var fats = Math.round(calorieRate * 0.25);

//углеводы
var carbohydrates = Math.round(calorieRate * 0.35);

Похоже дело в опечатке, 10 строка, слово metabIlizm, а должно быть metabOlizm

1 лайк

спасибо! ура работает !

Не понимаю…, вижу везде в решениях, переменную о метаболизме. На мой взгляд, правильнее без нее, т.к. меньше кода.
Мой вариант:
var calorieRate = Math.round((88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age)) * activityRate);
var proteins = Math.round(calorieRate * 40 / 100);
var fats = Math.round(calorieRate * 25 / 100);
var carbohydrates = Math.round(calorieRate * 35 / 100);
console.log('калории: ’ + calorieRate, 'протеины: ’ + proteins, 'жиры: ’ + fats, 'углеводы: ’ + carbohydrates);

Согласен,тоже не понимаю какой смысл что либо усложнять,добавлять переменную о которой не сказано в задании.

По поводу переменной (метаболизм), согласен, что про нее не сказано в задании.
Но тут дело в том, чтобы писать код, который после тебя сможет разобрать другой сотрудник компании. А в таком ракурсе, лучше писать более понятный и просто читаемый код, его просто
понять и как следствие, поддерживать. Лучше привыкать к этому вот с таких вот, простых решений.

let weight = 5;
let length = 60;
let age = 5;
let activityRate = 1.725;

let metabolicRate = 
  (88.362 + (13.397 * weight) + (4.799 * length) - (5.677 * age));
  
let calorieRate = Math.round(metabolicRate * activityRate);

let proteins = Math.round(calorieRate * 0.4);
let fats = Math.round(calorieRate * 0.25);
let carbohydrates = Math.round(calorieRate * 0.35)