Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Задача. Трикутники. Вивести трикутники із зірочок (розмір вказує користувач)
- let osnova = +prompt("Введіть кількість зірочок у основі трикутника:") // можно именовать размер - size, чем проще - тем лучше. в любом случае транслитерация нехорошо.
- let s = ""; // такие именования не помогают нам, они безлики как шпалы, а нам бы именованые указатели..
- let f = ""; // чух-чух..
- for (let j = 0; j < osnova; j++) { // можно конечно j, но i привычнее
- s += ("*"); // s = s + '*'; с каждой итерацией эс выростает на одну звездочку
- //for (let i = 0; i < osnova - (osnova - 1); i++) { // а сократится весь цикл, так как он всегда выполняется лишь один раз: osnova - (osnova - 1) = osnova - osnova + 1 = 1, а зачем цикл который выполняется один раз? это то же выражение записанное без цикла, вот оно лишь о осталось, вот как сократили формулу..
- f += s + "\n"; // f = f + s + '\n'; с каждой итерацией к имеющейся эф добавляем выросшую эс и перенос строки
- // } это скобка венчала тело цикла, без него также не нужна, конечно.
- // console.log('f = [\n' + f + ']\n'); // раскомментировав эту строку можно глянуть поитеративно значения эф
- }
- console.log(f);
- /*
- таким образом у вас получился "хитрый" цикл, в который НЕ вложен другой, а увеличение ряда звезд
- происходит за счет сохранения старого значение переменной эс и добавлением на каждой итерации еще одной
- звезды. это норм, но для того чтобы хорошенько понять циклы и победить остальные треугольники и елочку
- не годится. Надо вложить цикл. Тогда внешний цикл пускай отвечает за высоту треугольника и добавляет перевод
- строки к каждой строке которую внутри него будет составлять (каждый раз заново) вложенный цикл.
- */
Add Comment
Please, Sign In to add comment