SHOW:
|
|
- or go back to the newest paste.
1 | //https://zero.p2p.shpp.me/tasks/4_2_centered_thing.html | |
2 | // Інна Заїка | |
3 | let item;// елемент | |
4 | let numbers = [];//масив | |
5 | let maxCount = 20;// максимальна кількість введених чисел | |
6 | ||
7 | - | let maxWidth = 0;// набільше число серед введених |
7 | + | let maxWidth = 0;// набільше число серед введених // в контексті єтапу прийому значень, це макс. число, а в контектсі виводу можна сказати ширина, вважаю тут вдаліше дотриматися контексту поточної задачі і назвати maxNumber |
8 | for (let i = 0; i < maxCount; i++) {// питаю числа | |
9 | - | let oddNumber = +prompt("Введіть число"); |
9 | + | let oddNumber = +prompt("Введіть число"); // таке іменування тут вважаю вдалішим за просто number, бо допомагає розуміти код |
10 | if (oddNumber == 0) {// якщо нуль,цикл переривається | |
11 | break; | |
12 | } | |
13 | ||
14 | if (maxWidth < oddNumber) {// знаходимо максимальне число | |
15 | maxWidth = oddNumber; | |
16 | } | |
17 | ||
18 | numbers[i] = oddNumber;// добавляємо число у масив | |
19 | } | |
20 | ||
21 | let starChar = '*'; | |
22 | let spaceChar = ' '; | |
23 | for (let i = 0; i < numbers.length; i++) { | |
24 | // кількість зірок довірнює числу з масиву, яке вводе людина | |
25 | let starsCount = numbers[i]; | |
26 | // кількість пробілів перед зіркою для відцентровування | |
27 | let spacesCount = (maxWidth - starsCount) / 2; | |
28 | // вивід пробілів | |
29 | for (let j = 0; j < spacesCount; j++) { | |
30 | console.put(spaceChar); | |
31 | } | |
32 | // вивід зірок | |
33 | for (let j = 0; j < starsCount; j++) { | |
34 | console.put(starChar); | |
35 | } | |
36 | // перехід на новий рядок | |
37 | console.log(); | |
38 | } | |
39 | /* мені до вподоби ваше рішення, бо воно поетапне, зрозуміле, логічне. Етап введення даних та обчислення максимального об'єднані в одному блокові коду - вважаю тут це норм. Ідеально на мою думку було б розділити навіть і ці два логічні етапи. На етапі прийняття даних можна обійтися без брейку - це не обов'язково, є така думка, що брейк та контінью можуть свдчити про неідеальний алгоритм, хоча інколи вони навпакаи дуже допомагають. Ще одна думка стосовно вибору між вайл та фо - цикли повністю взаємозамінні, коли відома кількість ітерацій - фор, коли точна кількість не відома а залежить від якоїчь умови - вайл. ПОдібні думки - для міркування. Задачан виконана добре. | |
40 | - | // перехід на новий рядок |
40 | + | Гарного коду!*/ |