This commit is contained in:
Костя 2025-07-01 12:56:43 +03:00
parent 499b3c97bc
commit 450c6d746b
1 changed files with 1 additions and 72 deletions

View File

@ -1,75 +1,4 @@
//Обучение ЦИКЛАМ
//lesson 1.4 X-MAS TREE
// функиця рисует равномерный треугольник
function DrawLine(count: number, countP: number){ //рисуем треугольник из звездочек
const minimalString = '*';
const minimalP = ' ';
//lesson 1.5 SUM OF NUMBERS
let result = minimalP.repeat(countP) + minimalString.repeat(count) //с начала рисуем пробелы (countP) а потом зведочки
console.log(result);
}
function DrawTriangle(height: number, chisloP: number) { //высота - это сколько рядов отрисует
for(let index = 1; index <= height; ){
DrawLine(index * 2 - 1, chisloP - index ); // вызываем функцию DrawLine внутри цикла, chisloN - нужно иметь МАКС значение как в первом уроке
index = index +1;
//console.log(height);
}
}
//console.log(`===========`); //тут мы считаем пробелы или отступы (для визуального сравенения рисунка)
//статичный вызов функции
//DrawTriangle(1); // простой вывод функции на экран
let chisloN = 7; //задаем число N ГЛОБАЛЬНАЯ ПЕРЕМЕННАЯ ДЛЯ ОБОИХ ЦИКЛОВ
//DrawTriangle(1);
//console.log(``); //синтетический перевод корретки
//console.log(`============Через цикл одинаковой формы ровно`);
// тут мы видим, что цикл вызывается ТРИ раза, хотя функцию вызывали ДВА раза, по этому рисуется три ряда звездочек
// т.е. при каждой итерации цикла заново вызов ПЕРВОЙ функции DrawLine
for(let index = 1; index <= chisloN;){ // index <= 2 регулируем число елочек
DrawTriangle(index, chisloN); //количество вызовов функции DrawLine
index = index +1;
}
//lesson 1.3 ANOTHER TRIANGLE
/*let chisloN: number = 5; //эмуляция вводу а с клавиатуры числа N
for(let index = 1; index < chisloN; ){
//тут нарисовал статично, как должен рисоваться треугольник
//DrawLine(1 , 3);
//DrawLine(3 , 2);
//DrawLine(5 , 1);
DrawLine(index * 2 - 1, chisloN - index);
//DrawLine(1, 2); 1 * 2 - 1
//DrawLine(3, 1); 2 * 2 - 1
//DrawLine(5, 0); 3 * 2 - 1
index = index +1; //запись, index = index +2, нам дает все не четные числа
}
//chisloN = chisloN -1 // запись каждый раз уменьшает число пробелов (начиная с макс значения N)
// let index = 1;
// while(index <= chisloN) {
// DrawLine(index, chisloN - index);
// // console.log(`*: ${index}, space: ${chisloN - index}`);
// index = index + 1;
// }
//let probel: number = 1;
//i++ => i = i + 1
//i-- => i = i - 1
//--i => i = i - 1
// for(let i = 0; i < count; i++){
// str = str + '*' // i = 0 => str = '*' // i == 1 => '**' // i = 2 => '***'
// }*/