Leonid
Пасибо, все получилось))
Что, правда? :) Там в понимании задачи ошибка, как я вижу.
Дмитрий С.
Вот я про тоже )) Корявый код. Он то работает, но делает не совсем то что должен
Leonid
"кратную 3 и 5" Не верно "кратную 3 или 5" верно
Leonid
ещё функция должна возвращать результат
Leonid
и это ещё не все ошибки ))
Leonid
"остаток от деления не равен единице", wat?
Дмитрий С.
let sum = 0;let number = 10; function solution(number){ for (i = 1;i<=number;i++){ if (i : 3 !==1 || i : 5 !==1) continue; sum= sum+i; return sum; }} solution(number);
Дмитрий С.
Деление /, вот ошибка
Ol
Деление /, вот ошибка
Да нет. Деление это не двоеточие
Дмитрий С.
Изменил
iren
Деление /, вот ошибка
Да почему? Правильно был остаток. Им проверяется кратность. Только он не с единицей должен сравниваться
Leonid
let sum = 0;let number = 10; function solution(number){ for (i = 1;i<=number;i++){ if (i : 3 !==1 || i : 5 !==1) continue; sum= sum+i; return sum; }} solution(number);
Continue не нужен. Return вынеси за цикл Объявляй переменную sum внутри функции. number вообще не объявляй, передай сразу значение solution(10); остаток от деления - оператор %
Дмитрий С.
(i / 3 !==1 || i / 5 !==1) а вот так не сработает?
Дмитрий С.
Согласен с ольгой, вчера на этом обжигался )
Leonid
(i / 3 !==1 || i / 5 !==1) а вот так не сработает?
На калькуляторе попробуй.
Leonid
На калькуляторе попробуй.
TRUE по твоему условию )))
Ol
Стоп
Никита
Мне кажется, стоит разобраться в теории, прежде чем переходить к практике
Leonid
Дмитрий С.
А почему continue не нужен не пойму? Логика такая что если условие работает в иф то чтоб цикл продолжился
Leonid
А почему continue не нужен не пойму? Логика такая что если условие работает в иф то чтоб цикл продолжился
Он в любом случае продолжится. Если условие срабатывает, то число на этой итерации прибавляется к сумме.
Leonid
Цикл прекратится?
Ol
Внутри функции, а не цикла
Все правильно, это я туплю. У меня осталась дыра, зачем в функции ставить ретерн
Leonid
Все правильно, это я туплю. У меня осталась дыра, зачем в функции ставить ретерн
Такая подсказочка. Число кратно другому, если остаток от их деления равен нулю. Шел к этому пол жизни :D
ᴍᴀɪɴᴇꜰᴏʟ🇺🇦
Ты его озадачил таким вопросом, он ушёл консультироваться с разработчиком. А вообще это норма, перезагрузи страницу или подожди
Никита
Как минимум
ᴍᴀɪɴᴇꜰᴏʟ🇺🇦
Да 😁
Leonid
Дык это я написала)
Что в итоге получилось?
Andrii
Теория синтаксиса
Ты про LR - грамматики? Их 99% программистов не знают
Дмитрий С.
Я решаю, мозговая активность на пиковом уровне ))
Дмитрий С.
пока вот так но все еще не работает, но знайте, я справлюсь )))
Ol
Что в итоге получилось?
Чёт ноль получается))
Ol
Но у меня там И стоит
Leonid
пока вот так но все еще не работает, но знайте, я справлюсь )))
Конечно справишься, ещё немного осталось :)
Ol
Что логично нет до 10 чисел, которые сразу делятся и на 3, и на 5
Дмитрий С.
function solution(number){ for (i = 1;i<=10;i++){ if (i % 3 !==0 || i % 5 !==0) { sum= sum+i;} } let sum = 0; return sum;} solution(10);
Leonid
ух жесть )))
Дмитрий С.
1я задача, так что извиняйте ))
Ol
33 получилось
Дмитрий С.
ну если не брать в расчет те который на LJS вконце глав
Ol
а должно быть 3+5+9+10
Leonid
Вот ещё подсказка, ошибка в понимании задачи
Дмитрий С.
значит i < 10 без =
Andrii
?
Шесть на три делиться?
Дмитрий С.
а нужно в консоль как у ольги значение вынести или ретерном вернуть?
Leonid
33 получилось
объяви переменную внутри функции, а не за её пределами. добавь return sum; а логи можно писать сразу вот так: console.log(s(10)); Будет сразу выдавать результат
Leonid
а нужно в консоль как у ольги значение вынести или ретерном вернуть?
Вернуть через return. Лог для того, чтобы самому видеть что получается
Leonid
function solution(number){ for (i = 1;i<=10;i++){ if (i % 3 !==0 || i % 5 !==0) { sum= sum+i;} } let sum = 0; return sum;} solution(10);
Переменную объяви разово в функции, но перед циклом. Вместо 10 в цикле должна быть переменная (аргумент функции).
Ol
объяви переменную внутри функции, а не за её пределами. добавь return sum; а логи можно писать сразу вот так: console.log(s(10)); Будет сразу выдавать результат
какую функцию выполняет return? он возвращает результат. Но что это значит, куда и кому он его "возвращает"?
Leonid
Вы уже очень близко :)
Дмитрий С.
function solution(number){ let sum = 0; for (i = 1;i<number;i++){ if (i % 3 !==0 || i % 5 !==0) { sum= sum+i;} } return sum; } solution(10);
Дмитрий С.
Картинкой?
Leonid
Картинкой?
function solution(number){ let sum = 0; for (i = 1;i<number;i++){ if (i % 3 !==0 || i % 5 !==0) { sum= sum+i;} } return sum; } solution(10);
Andrii
какую функцию выполняет return? он возвращает результат. Но что это значит, куда и кому он его "возвращает"?
Что такое функция? Это какое-то преобразования входных параметров в какое-то значение. return говорит нам всё, преобразование закончено, вот его результат.
Leonid
тройные кавычки, где тильда и "ё" на клавиатуре
Дмитрий С.
Нифига не понял что за кавычки))
Leonid
Нифига не понял что за кавычки))
Забудь :) Измени условие сравнения и должно у тебя всё сработать
Andrii
`` `
Дмитрий С.
То что в if() ?
Ol
Просто JS считает, что если return не было, то надо вернуть undefined
Тогда почему он в sum пишет нормальный ответ, а не underfined?