Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Задача про ліфт.
- написати програму, яка імітує ліфт:
- Питає номер поверху,
- №1 Якщо менше 1 чи більше 9, то виводить "невірний поверх".
- №2 Якщо 1-3 чи 7-9 то пише "ок".
- №3 Якщо ж від 4 до 6, то просить ввести пароль (числовий).
- №4 Якщо пароль не дорівнює 1337, то програма каже "невірний пароль", а інакше "ок".*/
- var elevatorBase = prompt("Veditb nomer poverhy");
- var elevatorPassword = 0; // створимо змінну тут*
- if (elevatorBase > 9 || elevatorBase < 1) {
- alert("Nevirnuy poverh"); // краще у консоль виводити.
- }
- if ((elevatorBase >= 1 && elevatorBase <= 3) || (elevatorBase <= 7 && elevatorBase >=9 )) { // міняю дужки на пробіли)
- alert("ok");
- //}else var elevatorPassword = prompt("password"); // ой, не пишить так ,поперше під елсе лише створення змінної попадає,
- // так як немає фігурних дужок , що вказують блок коду, по-друге погано читати, краще кожну команду на своєму рядку.
- // не жалійте рядків та фігурних дужок, важливіше читабельність та коректність роботи коду. І ще створення змінних в
- // залежності від якихось умов може викликати ситуацію, коли змінна не створена (не зайшли до іфа, чи до елсе) а
- // программа хоче її використати, то буде помилка. Краще змінні створювати у незалежності від умов - тобто або на початку
- // программи, а потім, коли кода буде більше, то чим ближче до міста використання.
- } else {
- elevatorPassword = prompt("password"); // *а використаємо тут
- if (elevatorPassword == 1337) {
- alert("ok");
- } else {
- alert("Neverno");
- }
- }
- // можливо є спосіб спростити уникнути деякої вкладеності, щоб кода стало менше, він був би понятнішим, та його
- // логіка залишилась коректною, наприклад: спочатку ви перевіряєте №1, як зараз, а потім можна перевірити умову №3(4), тоді
- // залишиться більш складна у описанні умова. Можна не поспішати виводити відповідь, а міняти змінну.
- // Ваше рішення цілком норм. Продовжуйте! Гарного коду!
- // можливо буде корисна простіша версія, вона знизу, але не читайте її, якщо хочете самі оптимізувати, бо код "розбачити"
- // складно.
- let floor = +prompt("введіть номер поверху");
- let answer = 'ok';
- if (floor < 1 || floor > 9) {
- answer = "невірний поверх";
- }
- if (floor > 3 && floor < 7) {
- if (+prompt("для доступу з 4 по 6 поверхи введіть числовий пароль") != 1337) {
- answer = "невірний пароль";
- }
- }
- console.log(answer);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement