А если мы эту ветку уберем, то кушать будет в первый и второй день?)
Без ветки получается незаконченная связка if - else
Это нормальная практика, нет такого понятия как незаконченная связка if- else
Напиши, как ты видишь?
for (var i = days; i > 0; i -= 1) {
currentDay = i % period;
if (currentDay === 0) {
if (i % 7 === 6 || i % 7 === 0 ) {
total += weekendAmount;
} else {
total += workDayAmount;
}
}
}
Логично, работает)))
Форматируйте свой код в первом сообщении с помощью кнопки </> в редакторе сообщений, пожалуйста.
Ready
Видимо не ready
Было бы намного удобнее, если бы Вы, разработчики, детально разбирали КАЖДОЕ задание. Теория преподается из рук вон, приходится ползать по сторонним сайтам. Странно, что я взял решение админа, которое должно быть образцовым, а потом вылезают непонятные ляпы. И Ваш раздел по JS просто ужасен, даже по сравнению с остальными темами. Простите за резкость
Здесь js изучается не в контексте программирования, а в контексте оживления верстки. Для первого знакомства not bad
Не то чтобы прям ужасен, но определенно он не дотягивает до уровня курсов по CSS ни по теории, ни по продуманности заданий. Да и в курсах по JS ребячество с Кексиками уже неуместно, забивает голову ерундой.
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
for (let i = 1; i <= days; i++) {
if (i % 2 === 0) {
total += evenDayAmount;
console.log('чётные ’ + total)
} else {
total += oddDayAmount;
console.log('нечётные ’ + total)
}
}
Решил двумя способами.
Первый - корявый, но так же верный.
А вот второй - общепринятый))
/* первый способ */
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
if (days%2===0) {
total=(days/2)*evenDayAmount + (days/2)*oddDayAmount
}
else if (days%2!==0) {
total = days%2 * oddDayAmount + (days - days%2) /2 * evenDayAmount + (days - days%2) /2 * oddDayAmount
}
/* второй способ */
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
for (let i=1; days>=i; i++) {
if (i%2!==0) {
total += oddDayAmount;
}
else {
total += evenDayAmount;
}
}
> for (let i = 1; i <= days; i++) {
> if (i % 2 === 0) {
> total += evenDayAmount;
> }
> else {
> total += oddDayAmount;
> }
> }
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
for (let n = 1; n <= days; n++) {
if (n % 2 === 0) {
total += evenDayAmount;
} else {
total += oddDayAmount;
}
}
Думаю, объявлять переменную-счетчик здесь не нужно.
Мой вариант:
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
for (days; days > 0; days--) {
if (days % 2 === 0) {
total += evenDayAmount;
} else {
total += oddDayAmount;
}
}
Первый вариант:
let days = 9; // Дней в периоде
let evenDayAmount = 200; // Количество протеина в чётные дни
let oddDayAmount = 100; // Количество протеина в нечётные дни
let total = 0; // Общее количество протеина
for (let i = 1; i <= days; i++) {
if (i % 2 === 0) {
total += evenDayAmount;
} else {
total += oddDayAmount;
}
}
Второй вариант:
while (days > 0) {
(days % 2 === 0) ? (total += evenDayAmount):
(total += oddDayAmount);
days--
}