Треугольник паскаля - C (СИ)
Формулировка задачи:
Я должен ввести некоторое число, и на выводиться треугольник паскаля от 1 до введённого числа например ввожу 5
5*пробелов1
4*пробелов1пробел1пробел1
3*пробела1пробел2пробел1
2*пробела1&пробел3&пробел3пробел1
пробел1пробел4пробел6пробел4 1
То есть также надо соблюсти форму, пробовал с 3 циклами не выходит однако написано что можно и с двумя помогите плз
прочёл темы типо
Получения треугольника Паскаля до n-й строки включительно
однако ничо в голову не приходит
Решение задачи: «Треугольник паскаля»
textual
Листинг программы
int p[50], ps=0;
void c() {for(int i=ps; i>=0; i--) p[i]+=p[i-1]; p[0]=1; ps++;}
void s() {for(int i=0; i<ps; i++) cout<<p[i]<<'\t'<<'\t'; cout<<'\n';}
void f(int n) {for(int i=0; i<n; i++) cout<<'\t'; c(); s(); if (n) f(n-1);}
int main() {f(10);}
Объяснение кода листинга программы
В этом коде реализуется алгоритм вычисления чисел треугольника Паскаля. Список действий следующий:
- Создаётся массив
pдля хранения чисел треугольника Паскаля. - Инициализируется переменная
psдля хранения номера текущего элемента массива. - Функция
cзаполняет текущий треугольник Паскаля, сдвигая каждый элемент влево на единицу. - Функция
sвыводит текущий треугольник Паскаля на экран, добавляя в конце каждого элемента табуляцию. - Функция
fрекурсивно вызывает себя, вычисляя и выводя очередной треугольник Паскаля до тех пор, пока не достигнет базового случая (когда высота треугольника равна 1). - В функции
mainвызывается функцияfс аргументом 10, чтобы вычислить и вывести на экран 10-й треугольник Паскаля. Таким образом, данный код вычисляет и выводит на экран первые 10 треугольников Паскаля.