Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/313: Рейтинг темы: голосов - 313, средняя оценка - 4.78
3 / 3 / 1
Регистрация: 14.10.2009
Сообщений: 76

Получения треугольника Паскаля до n-й строки включительно

09.11.2009, 17:16. Показов 64071. Ответов 5

Студворк — интернет-сервис помощи студентам
Написать программу для получения треугольника Паскаля до n-той строчки включая!
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
помогите резить задачу самыми простыми способами, без сложных операторов и библиотек.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.11.2009, 17:16
Ответы с готовыми решениями:

Преобразование уже данной строки треугольника Паскаля в следующую
Не могу придумать алгоритм для преобразования уже данной строки треугольника Паскаля, в следующую. Написал программу для нахождения n-ой...

Создание треугольника Паскаля
Даны два числа n и m. Создайте двумерный массив и заполните его по следующим правилам: Числа, стоящие в строке 0 или в столбце 0 равны 1...

Вычисление Треугольника Паскаля
Задача: Треугольник Паскаля - это бесконечная треугольная матрица, в которой каждая n-я строка содержит ровно n целых чисел - биномиальные...

5
3 / 3 / 1
Регистрация: 14.10.2009
Сообщений: 76
10.11.2009, 20:02  [ТС]
эхххх, так и никто и не решил, обидно.
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
10.11.2009, 20:26
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Apmyp /7,
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
 #define N 1000
 long c[N];
 int main () {
    long n, i, j;
    scanf ("%ld",&n);
    for(i = 1; i <= n ; i++) c[i] =0;
    c[0] = 1;
    for(j = 1 ; j <= n; j++)
       for(i = j; i >= 1 ; i--)
          c[i] = c[i-1] + c[i];
    for(i = 0; i <= n ; i++)
       printf ("%ld ", c[i]);
    return 0;
 }
0
 Аватар для manfeese
133 / 132 / 29
Регистрация: 04.01.2009
Сообщений: 415
10.11.2009, 20:57
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Вот еще вариант, используя формулу из комбинаторики, нахождения сочетаний из N по K. Если перечислять все сочетания К из N результат N-ой строки как раз выходит таким каким требуется!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream.h>
 
using namespace std;
                    
double Cnk(int N,int K)
{
return ( (N<K) ? 0 : ((K==0) ? 1 : ((N-K+1) / double(K) * Cnk(N,K-1))) );
}
                  
int main()
{
    int n;
    cin>>n;
 
for (int j = 0; j <= n; j++) {
  for (int i=0; i <=j ; i++)
   cout<<Cnk(j,i)<<" ";
  cout<<"\n";
}
    std::cin.get();
    std::cin.get();
 
    return 0;
}
Если тяжело осмыслить рекурсивную функцию Cnk, то можно использовать не рекурсивную:

C++
1
2
3
4
5
6
7
double Cnk(int N,int K)
{
  double Sum = 1;
  for (int i = 1; i <= K; i++)
    Sum*=(N-i+1)/float(i);
  return Sum;
}
0
3 / 3 / 1
Регистрация: 14.10.2009
Сообщений: 76
11.11.2009, 19:57  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <conio.h>
#include <iostream.h>
 void main ()
 {  int A[100];
    int n, i, j;
    cout<<"Vvesti koli4estvo elementov: ";cin>>n;
    for(i = 1; i <= n ; i++) A[i] =0;
    A[0] = 1;
    for(j = 1 ; j <= n; j++)
    for(i = j; i >= 1 ; i--)
    A[i] = A[i-1] + A[i];
    for(i = 0; i <= n ; i++)
       cout<<"  "<<A[i];
    getch();
 }
как сделать что бы результат выводился бы вот так вот:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1
0 / 0 / 0
Регистрация: 21.10.2016
Сообщений: 10
10.02.2017, 00:03
Ребят, вот код для треугольника с выводом в файл, работает до 31
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <stdlib.h>
 
using namespace std;
 
int main(int argc, char *argv[]){
    setlocale(0,"rus");
    cout<<"Треугольник паскаля"<<endl;
    int n=2,i,j,mas[31][31];
        for(i=0;i<31;i++){
        for(j=0;j<31;j++){
        mas[i][j]=0;
        }
    }
    mas[0][0]=1;
    mas[1][0]=1;
    mas[1][1]=1;
    for(i=2;i<=31;i++){
        mas[i][n]=1;
        mas[i][0]=1;
        for(j=1;j<n;j++){
        mas[i][j]=mas[i-1][j]+mas[i-1][j-1];
        }
        n++;
    }
    n=0;
//  
FILE* file=fopen("kiri.txt","w");
    for(i=0;i<31;i++){
    
        for(j=0;j<=n;j++){
    fprintf(file,"%i \t",mas[i][j]);
        }
        n++;
            fprintf(file,"\n");
    }
    fclose(file);
    cout<<"Треугольник записан в файл kiri.txt \n";
int k;
cout<<"Открыть файл? (1-Да/ 2-нет)=>";cin>>k;
switch(k){
    case 1:{    system("kiri.txt");
 
        break;
    }
    case 2:{ cout<<"закрываю программу"<<endl;
        break;
    }
}
 
    system("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.02.2017, 00:03
Помогаю со студенческими работами здесь

Получения длины гипотенузы, периметра, площади прямоугольного треугольника
Разработать программу для получения длины гипотенузы, периметра, площади прямоугольного треугольника по заданным значениям двух катетов. ...

Построить n строк треугольника Паскаля
построить n строк треугольника Паскаля

Построить n строк треугольника Паскаля
Построить n строк треугольника Паскаля.Люди, кто может, помогите решить плиз, очень нужно. 1 1 1 1 ...

Построить n строк треугольника Паскаля
Треугольник Паскаля строится следующим образом. Первая строка состоит из одного числа, равного единице. Каждая следующая содержит на одно...

Построить n-ю строку треугольника Паскаля
Пожалуйста,помогите срочно с прогой. Нужно построить n-ю строку треугольника Паскаля Как построить весь треугольник я знаю ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru