Вызов II уровня: "Контроль показателей — ключ к победе!"

Всем привет!

Не понимаю, как возвести длину в квадрате при подсчете ИМТ.
Закоментированная переменная bodyMassIndex не работает и выдает ошибку, хотя в условии написана формула подсчета - i = масса / длина ^ 2 (вес делить на длину в квадрате).

Но путем не хитрым, я нашел другое решение (как показано в не закоментированной переменной bodyMassIndex ) и заказчик принял программу.

Подскажите, как же правильно возвести длину в квадрат?

И следующее испытание не работает по формуле в условии, но предыдущий способ удовлетворил заказчика - ведь программа работает))

Для возведения числа в степень используется Math.pow(число, степень);
Но в теории я что-то не могу найти, возможно этот момент упущен. Иначе здесь можно сделать только так, как вы сделали - умножением числа на себя самого.
Хотелось бы тоже узнать, какое решение ожидается. @GreenLera, помогите разобраться.

в es6 есть оператор возведения в степень **
Местный редактор его должен понимать
Но в случае степени двойки не вижу проблемы умножить число на себя

@Wisher @Ineska В первом задании мы не упомянули способ возведения в степень, потому что это не влияет на решение задачи. Достаточно умножить число на само себя.
Если вы знаете про Math.pow или нашли этот способ на том же MDN — здорово. Обычно мы рассказываем про команды без которых решение не написать или написать, но с бОльшим количеством сложностей и кода. Но я учту на будущее. Добавлю, если вам кажется, что этого не хватает.

Насчёт второго задания

И следующее испытание не работает по формуле в условии, но предыдущий способ удовлетворил заказчика - ведь программа работает))

Не очень поняла про что вы, у вас решение такое, как описано в ТЗ

@GreenLera Спасибо Вам за ответ. Теперь все понятно. Именно на MDN я нашел про Math.pow и раз уж это не объяснялось в теории и условии - не стал использовать.
А на счет второго задания, извиняюсь, все в порядке.

@Ineska и @ruslanhimself, спасибо за помощь))

Summary
var length = 0.55;
var weight = 5;
var fatMass = 0.8;
var bodyMassIndex;
var fatPercent;
bodyMassIndex = Math.round(weight /Math.pow(length, 2));
fatPercent = Math.round((fatMass / weight) * 100);

var length = 0.55;
var weight = 5;
var fatMass = 0.8;
var bodyMassIndex = Math.round(weight / Math.pow(length,2));
var fatPercent = Math.round(fatMass / weight * 100);

@GreenLera я могу и ошибаться, но посмотрите пожалуйста на скриншот прикрепленный к этому сообщению(отмечено красным маркером), опечатка?

да, опечатка. Поправим спасибо)

Пробежка по треугольному парку

var firstLeg = 300;
var secondLeg = 700;
var hypotenuse= Math.round(Math.sqrt(Math.pow(firstLeg,2)+Math.pow(secondLeg,2)));
var perimeter = firstLeg+secondLeg+hypotenuse;

Доброго дня уважаемые, у меня только 1 вопрос, как человек который некогда не имел отношения к js должен понять решение задачи? Если он опирается на значения которые были указаны в начале задачи и в коменах ??? или данные уроки расчитаны на более продвинутых ?

Попробуйте написать, какие именно вопросы у вас возникают. Если говорить именно по конкретной задаче, то тут больше математики чем js.

а дело не в жс. чтобы решить задачу, надо как минимум придумать алгоритм решения, а потом уже подбирать инструменты решения (т.е. что в языке программирования допустимо). если нет инструментов - брать другой алгоритм - сотни решений - полиморфизм.
так же, как программист, вы должны понимать, какие данные на входе и выходе по типу и значению.

посмотрите пожалуйста моё сообщение в другой ветке [8/20] 100% Испытание: толщина и прозрачность обводки.
Мне кажется, ошибка на сайте. Как по мне у меня всё корректно. Знакомые веб-дизайнеры не увидели тоже ошибок, при этом 100% не получается. Всего 99.8%. Внутренний перфекционист негодует :smile:

let length = 0.55;
let weight = 5;
let fatMass = 0.8;

let bodyMassIndex = Math.round(weight / length ** 2)
let fatPercent = Math.round(fatMass * 100 / weight)

Специально зарегилась, чтобы написать. Что на начальном уровне, что на среднем встречаются такие формулировки в задачах, которые просто в тупик ставят. В итоге оказывается, что задача довольно простая, а времени на то, чтобы понять, чего от тебя хотят, уходит в разы больше, чем на саму задачу. И, судя по комментариям к соответствующим темам, это не только моя проблема.

Также и здесь. Да, предполагается, что мы будем искать варианты решений сами, но может стоит аккуратнее быть с формулировками? Не все умеют между строк читать и догадываться, да и потом это очень сбивает мотивацию. Спасибо, что есть форум, куда можно заглянуть и понять, что и как, а заодно убедиться, что на свои интеллектуальные способности зря наговаривать начинаешь, пока пытаешься разобраться.

“Этот символ не используется в JavaScript. Вы можете заменить его обычным умножением, как в математике.” Я, допустим, автоматически считала сначала смысл как “вы можете использовать только вот такую математику”, соответственно, даже не сразу сообразила, что можно поискать варианты других решений, когда проверка не прошла. Достаточно было бы сформулировать вот так “Вы можете заменить его обычным умножением, как в математике или найти другой способ решения”. Да, для кого-то это и так очевидно, но вот для кого-то нет. Мне кажется, стоит все же помнить, что проходят эти задачки новички, которые чего-то не знают, где-то тупят, где-то просто вот принимают на веру те условия, что написаны, и банально не догадываются иногда, в какую сторону копнуть и т.д.