Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // *то что под звездочкой - можно бегло просмотреть, исправлять не нужно!
- // Остальное на ваше усмотрение, но все сделано довольно хорошо.)
- let allCards = [0,0,0,0,0,0,0,0,0,0]; // можно просто cards. можно заполнить нулями в цикле, если большой массив.)
- let cardNum; // точное имя
- let sumToAdd; // в контексте этой задачи , в первую очередь, сумма это сумма на всех картах, эту сумму можно назвать "платеж"
- let totalSum = 0; // тогда тут можно будет просто sum
- let quntityOfCards = parseInt(prompt("How many cards add to work?", "1-10")); //to work with more than 1 card неочепятка))
- for (let k = 0; k < quntityOfCards; k++) {
- cardNum = parseInt(prompt("Choose your card", "0-9")); // вполне можно так! а можно инициализировать cardNum невалидным значением, например -1, чтобы сразу наверняка зайти в вайл, и тогда первый запрос (этот) можно убрать.
- while (cardNum < 0 || cardNum > 9) { //*раз уж вы задали довольно высокую планку качества кода скажу, немного забегая наперед, что всякие числа в коде лучше сохранять и использовать как переменные (или константы), потому что 9 - это что за девять? почему именно 9? а если так: while (cardNum < 0 || cardNum >= allCards.length) или так:
- // let numberOfCards = 10; количество карт
- // ***
- // while (cardNum < 0 || cardNum >= numberOfCards) - то подобных вопросов не возникнет, да и код будет гибче, если захотим изменить количество карт, то нужно будет только саму инициализацию переменной в одном месте кода поменять.
- cardNum = parseInt(prompt("Choose your card", "0-9"));
- }
- sumToAdd = parseInt(prompt("Enter sum to add", "-1000 - 1000"));
- while (sumToAdd < -1000 || sumToAdd > 1000) { // *в последующих ваших взрослых программах, такие числа (как и 9 выше) будут забавно называться "волшебными", именно по той причине, что это их свойство единственное может вполне точно ответить, почему именно это число, и почему не переменная или константа, НО на подготовительном вполне допустимо использование, даже лучше с ними, чтобы сосредоточиться на алгоритме.
- sumToAdd = parseInt(prompt("Enter sum to add", "-1000 - 1000"));
- }
- allCards[cardNum] = sumToAdd; // да, это верно. т.к. тут мы окажемся только если введены валидные данные
- }
- for (let i = 0; i < allCards.length; i++) {
- totalSum += parseInt(allCards[i]);
- console.put(allCards[i] + " ");
- }
- console.log();
- console.put("Total sum " + totalSum);
- // хорошие стиль и решение, смело двигайтесь дальше!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement