Timkor

centeredThing

Jan 14th, 2021 (edited)
878
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*<script src="https://zero.p2p.shpp.me/console.js"></script>
  2. <script>*/
  3.  
  4. /* питати людину про числа (вважатимемо, що він буде вводити тільки непарні числа,
  5. і їх буде не більше 20) до тих пір, доки він не введе 0*/
  6. let oddNum = []; // масиви варто іменувати в множині , oddNums
  7. let biggestNum = 0; // maxNum
  8. let num;
  9. let n = oddNum.length; // тут присвоїли нуль просто в змінну n
  10.  
  11. do {
  12.     num = +prompt('Введіть непарні числа', '')
  13.     if (num % 2 != 0) { // if (num % 2 === 1) якщо є вибір з інверсією чи без, то краще без, хоча є винятки.
  14.         oddNum.push(num)
  15.     }
  16.     if (num % 2 != 0 && num > biggestNum) { // я б вибір максимального робив окремо, так буде декомпозиція краще,
  17.                                             // а якщо таки "на льоту" то можна не дублювати свій код if (num % 2 != 0
  18.         biggestNum = num
  19.     }
  20.     n = oddNum.length;                     // норм рішення! якщо ця операція не повільна то красота!
  21. } while (n < 20 && num !== 0);
  22. /*
  23. ваш норм, можна так, трохи оптимальніше на мою думку
  24. do {
  25.     num = +prompt('Введіть непарні числа', '')
  26.     if (num % 2 === 1) {
  27.         oddNum.push(num)
  28.         n++;               // це на той випадок якщо таки повільна ))
  29.         if (num > biggestNum) {
  30.             biggestNum = num
  31.         }
  32.     }
  33. } while (n < 20 && num !== 0);
  34. */
  35.  
  36.  
  37.  
  38.  
  39. /* і потім вивести на екран відцентровану штуку
  40. пока ни чего не пришло в голову как цикл в цикле*/
  41.  
  42. let i = 0;
  43. let space = " ";
  44. let star = "*";
  45. while (i < oddNum.length) {
  46.     centre = (biggestNum - oddNum[i]) / 2;
  47.     for (let n = 0; n < centre; n++) {
  48.         console.put(" "); // console.put(space); взагалі добра практика до змінної зберігати все, а не магічні символи
  49.         // виводити. Змінна має ім'я яке пояснює чому цей символ, або чому це число, а самі числа та символи - ні.
  50.     }
  51.     for (let n = 0; n < oddNum[i]; n++) {
  52.         console.put("*"); // console.put(star);
  53.     }
  54.     i++;
  55.     console.log('');
  56. }
  57.  
  58. </script>
  59. // Стиль дуже важливий.
  60. // Гарного коду.
RAW Paste Data