Advertisement
Timkor

atm

Nov 22nd, 2020
1,034
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let arrCards = []; // cards ?
  2. let cardNumber, money;
  3. let sum = 0;
  4. enter: // мітка це екзотика, можна без неї легко обійтися у цій задачі
  5. while (true) { // ну якщо він вічний, то буде брейк, а брейк - це такий собі стоп-кран, краще без нього, але буває потрібен. да.
  6.     cardNumber = prompt('Введите номер карточки');
  7.     if (isFinite(cardNumber) && cardNumber >= 0 && cardNumber <= 9){
  8.        while (true) {
  9.            money = +prompt('Введите сумму денег');
  10.            if (isFinite(money) && money >= -1000 && money <= 1000){
  11.                break enter;
  12.            } else {
  13.                alert('Введите корректное значение - сумма от -1000 до 1000');
  14.            }
  15.        }
  16.     } else {
  17.         alert('Введите корректное значение - число от 0 до 9');
  18.     }
  19. }
  20. arrCards[cardNumber] = money;
  21. let displayArrCards = "";
  22. for ( let i = 0; i < 10; i++){
  23.     if (arrCards[i]) { // хм, оптимізація та захист, цікаво.
  24.         sum += arrCards[i];
  25.     } else {
  26.       arrCards[i] = 0;
  27.     }    
  28.     displayArrCards += arrCards[i] + ' ';
  29. }
  30. console.log(displayArrCards);
  31. console.log('В сумме на всех картах: ' + sum);
  32.  
  33. // цікаве рішення, як завжди. Я б робив значно простіше з точи зору написання коду, можливо моє ставлення до брейків
  34. // вічних циклів, контінью, міток, елсе -  занадто суворе, та я намагаюся не використовувати їх без крайньої потреби.
  35. // моє рішення було б на кшталт такого:
  36.  
  37.   do {
  38.     cardNum = +prompt("Введіть номер карточки, на яку Ви хочете покласти гроші");
  39.   } while (cardNum < 0 || cardNum >= 10)
  40. // тут ми з валідним номером картки
  41.   do {
  42.     payment = +prompt("Скільки Ви бажаєте покласти гривень?");
  43.   } while (payment < -1000 || payment > 1000)
  44. // тут і з валідною сумою
  45.   cards[cardNum] = payment; // імена змінних теж суб'єктивно мої
  46.  
  47. // Гарного коду!
  48.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement