#include <iostream>
#include <vector>
using namespace std;
int main(){
string v = "\\/", s = " |"; // v - ветка, s - ствол
vector <string> all; // все дерево
int q; // запрос цифры
int prevQ; // предыдущий запрос
int posV = 0, posS = 0, posA = 0; // позиция ветки, ствола, ветки+ствола
int step = 2; // шаг изменения позиции
string spacesV = "", spacesS = ""; // пробелы ветки, ствола
while(true){ // цикл повторяется бесконечно
cin >> q; // спрашиваем цифру у пользователя
if (q == 1){ // если цыфра 1
if (prevQ == 2) // если предыдущая цыфра была 2
posV--; // уменьшаем позицию ветки на 1
posV -= step; // уменшаем позицию ветки steр (в этом случае на 2 )
posS+=step; // увеличиваем на step позицию ствола
prevQ = 1; // записываем что эта цифра была 1
}
if (q == 2){ // если цифра 2
if (prevQ == 1) // если предыдщая цифра была 1
posV++; // увеличиваем позицию ветки на 1
posV += step; // увеличиваем позицию ветки на step
prevQ = 2; // записываем что это была цифра 2
}
if (q == 3) // если цифра 3
break; // выходим из цикла
system("cls"); // очистка экрана
spacesV = ""; // пробелы перед веткой очищаются
spacesS = ""; // и перед стволом тоже
for(int i = 0; i < posS + posV; i++) // цикл который увеличивает количество
spacesV +=" "; // пробелов ветки на posS+posV
for(int i = 0; i < posS; i++) // цикл что увеличивет количество
spacesS +=" "; // пробелов ствола на posS
all.push_back(spacesV + v); // добавляем в вектор пробелы веток + ветку
if(q == 1) // если цифра 1
for(int i = 0; i < all.size(); i++) // каждому элементу масива веток
all[i] = " " + all[i]; // добавляем два пробела
for(int i = all.size()-1; i >= 0; i--) // выводим в обратном порядке
cout << all[i] << endl; // все элементы массива
cout << spacesS << s << endl; // выводим пробелы ствола и сам ствол
}
return 0;
}
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
find(2);
find(15);
function find(num) {
if(num > arr.length) {
num = num - arr.length;
}
for (let i = 0; i < arr.length; i++) {
if(num === arr[i]) {
console.log(arr[i]);
}
}
}