Timkor

normElevator

Nov 18th, 2020
516
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*Задача про ліфт.
  2. написати програму, яка імітує ліфт:
  3. Питає номер поверху,
  4. №1 Якщо менше 1 чи більше 9, то виводить "невірний поверх".
  5. №2 Якщо 1-3 чи 7-9 то пише "ок".
  6. №3 Якщо ж від 4 до 6, то просить ввести пароль (числовий).
  7. №4 Якщо пароль не дорівнює 1337, то програма каже "невірний пароль", а інакше "ок".*/
  8.  
  9. var elevatorBase = prompt("Veditb nomer poverhy");
  10. var elevatorPassword = 0; // створимо змінну тут*
  11. if (elevatorBase > 9 || elevatorBase < 1) {
  12.     alert("Nevirnuy poverh"); // краще у консоль виводити.
  13. }
  14. if ((elevatorBase >= 1 &&  elevatorBase <= 3) || (elevatorBase <= 7 && elevatorBase >=9 )) { // міняю дужки на пробіли)
  15.     alert("ok");
  16. //}else var elevatorPassword = prompt("password"); // ой, не пишить так ,поперше під елсе лише створення змінної попадає,
  17. // так як немає фігурних дужок , що вказують блок коду, по-друге погано читати, краще кожну команду на своєму рядку.
  18. // не жалійте рядків та фігурних дужок, важливіше читабельність та коректність роботи коду. І ще створення змінних в
  19. // залежності від якихось умов може викликати ситуацію, коли змінна не створена (не зайшли до іфа, чи до елсе) а
  20. // программа хоче її використати, то буде помилка. Краще змінні створювати у незалежності від умов - тобто або на початку
  21. // программи, а потім, коли кода буде більше, то чим ближче до міста використання.
  22. } else {
  23.     elevatorPassword = prompt("password"); // *а використаємо тут
  24.  
  25.     if (elevatorPassword == 1337) {
  26.         alert("ok");
  27.     } else {
  28.         alert("Neverno");
  29.     }
  30. }
  31.  
  32. // можливо є спосіб спростити уникнути деякої вкладеності, щоб кода стало менше, він був би понятнішим, та його
  33. // логіка залишилась коректною, наприклад: спочатку  ви перевіряєте №1, як зараз, а потім можна перевірити умову №3(4), тоді
  34. // залишиться більш складна у описанні умова. Можна не поспішати виводити відповідь, а міняти змінну.
  35. // Ваше рішення цілком норм. Продовжуйте! Гарного коду!
  36.  
  37.  
  38. // можливо буде корисна простіша версія, вона знизу, але не читайте її, якщо хочете самі оптимізувати, бо код "розбачити"
  39. // складно.
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82. let floor = +prompt("введіть номер поверху");
  83. let answer = 'ok';
  84. if (floor < 1 || floor > 9) {
  85.     answer = "невірний поверх";
  86. }
  87. if (floor > 3 && floor < 7) {
  88.     if (+prompt("для доступу з 4 по 6 поверхи введіть числовий пароль") != 1337) {
  89.         answer = "невірний пароль";
  90.     }
  91. }
  92. console.log(answer);
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.

×