Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Хороший код, хорошие комментарии,хорошая декомпозиция, хороший стиль.
- // А раз так, то позволю себе некоторые "придирки", т.к. по сути все сделано правильно и вам надо двигаться далее.)
- let numb; //переменная объявлена, но не инициализирована значением, т.е. после этой строки в ней undefined, сравнивать ее
- // с чем-то кроме undefined не самое лучшее решение, т.к. может привести к неожиданным результатам. Хотя в вашем коде
- // все работает ожидаемо, но первый раз условие в вайле проверяет не "не введен ли ноль" а не нулем ли инициализирована
- // переменная, т.к. ввод еще не происходил. Возможно несколько решений: использовать do-while, или произвести ввод перед
- // сравнением:
- // while ((numb = parseInt(prompt("Введите число."))) !== 0)
- // Повторюсь: все работает, все хорошо, я высказываю субъективные семантические придирки, и ваше решение не требует
- // исправлений и переосмысливания сейчас. Вы вполне можете пройти остальные темы и успешно сдать вступ.
- let max = 0; //
- while (numb !== 0) { //не выполнять если введен 0
- numb = parseInt(prompt("Введите парные числа.")); // да пусть вводит любое, вы же отсеиваете нечетные.)
- if (numb % 2 == 1) continue // пропуск непарных // не склеивайте операторы с операндами, пробелы не помешают, // предпочтительнее использовать строгое равенство, оно не таит сюрпризов связанных с преобразованием типов.
- // Семантически: можно инвертировать условие: if (numb % 2 === 0) { тогда выполнять все остальное, и... все,)
- if (numb > max) { // сравнение введеного с 0
- max = numb // если введенно больше, чем было в max, переписать max
- }
- //console.log(max); проверка что записывается в max // для отладки программы - супер, но перед релизом (в нашем // случае перед ревью) старайтесь почистить код от всех "служебных" строк.
- }
- console.log("Максимальное число: " + max);
- // последняя придирка состоит в том, что если пользователь не ввел ни одного четного числа, то вывод скажет, что макс это
- // 0, как-бы да - ноль он вводил, но скорее не как число, а как триггер для выхода, если бы для выхода надо было бы ввести
- // например букву Q , тогда бы все равно утверждалось, что максимальное это ноль, а хотелось бы что-то типа "не было введено
- // четных чисел". Теперь главное: вы хорошо справились, только в таком случае подобные придирки имеют место быть, отнеситесь
- // к ним с пониманием, пожалуйста, и смело идите далее, к вашим целям. Все зависит от вас. Хорошего кода!
- // отвечая на ваш вопрос про выход по отмене или ескэйпу
- // while ((numb = +(prompt("Введите парные числа."))) !== 0 ) {
- // если нажаты эти кнопки, то вернется null, (это еще одно хитрое значение , обозначающее отсутствие значения) поэтому // проверка на undefined не работала. Нужно учесть, что parseInt(null) вернет NaN (not a number), а +(null) вернет 0.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement