Найти в Дзене
Tech Mahal

Как решить задачу треугольник на JavaScript

Задачка взята из подборки задач из книги Marijn Haverbeke "Eloquent Javascript" (2nd). Для понимания нужно обладать базовыми знаниями синтаксиса языка JavaScript и представлением как работают языки программирования. Для более вдумчивого осмысления материала, я предлагаю включить музыкальное сопровождение, которое я разместил в конце этой задачки. И так приступим! 1. Треугольник
Нужно вывести в консоль такую фигуру, используя цикл. for (let i = 1; i < 8; i++) {
const array = [];
for ( let j = 1; j < i; j++){
array.push('(хэш)');
}
console.log(...array);
} В цикле for я задаю такие параметры какие мне нужны. В примере треугольник состоит из 7-ми уровней. Значит мой цикл должен повторяться 7 раз. Поэтому счетчик i начинается с 1 и заканчивается цифрой меньше 8, то есть 7. i++ - оператор инкремент, увеличения значения на единицу. То есть после каждого прохождения цикла i будет увеличиваться на единицу пока однажды ее значение не станет равно 8-ми и цикл завершит св

Задачка взята из подборки задач из книги Marijn Haverbeke "Eloquent Javascript" (2nd). Для понимания нужно обладать базовыми знаниями синтаксиса языка JavaScript и представлением как работают языки программирования. Для более вдумчивого осмысления материала, я предлагаю включить музыкальное сопровождение, которое я разместил в конце этой задачки. И так приступим!

1. Треугольник
Нужно вывести в консоль такую фигуру, используя цикл.

for (let i = 1; i < 8; i++) {
const array = [];
for ( let j = 1; j < i; j++){
array.push('(хэш)');
}
console.log(...array);
}

В цикле for я задаю такие параметры какие мне нужны. В примере треугольник состоит из 7-ми уровней. Значит мой цикл должен повторяться 7 раз. Поэтому счетчик i начинается с 1 и заканчивается цифрой меньше 8, то есть 7. i++ - оператор инкремент, увеличения значения на единицу. То есть после каждого прохождения цикла i будет увеличиваться на единицу пока однажды ее значение не станет равно 8-ми и цикл завершит свою работу.

Цикл начал работу и я объявляю пустой массив с помощью ключевого слова const. Это ключевое слово значит, что мой массив под названием array нельзя будет использовать для других переменных в этом месте кода. Пустые квадратные скобки дают понять, что это массив и в нем пока ничего нет.

Во втором цикле for я задаю параметры, которые будут влиять на то, сколько знаков (хэш) я выведу на той или иной строчке.

Есть закономерность того, сколько знаков # выведено на строчке в зависимости от ее номера. Например, на 5-й строчке выведено 5 хэшов. Мы используем это для нашего второго цикла. Он будет выполняться столько раз, сколько мы ему передадим, отталкиваясь от счетчика i. Пока второй цикл не выполнит свою работу, первый цикл не сдвинется с места.

Второй цикл добавляет в наш массив 1 символ # хэш за раз. Таким образом, когда второй цикл завершает работу, на борту в массиве столько записано хэшов, сколько мы ему передали i. И в теле первого цикла мы выводим этот массив в консоле. Чтобы выводимое было похоже на то, что в примере, мы используем оператор три точки (...). Этот оператор расширяет выражение и вытаскивает значения из массива.

Попробуй поиграть с кодом. Убери три точки при выводе массива и заметь, что произойдет. Поменяй значение i, и посмотри к чему это приведет.

А я пойду медитировать

-2