Création
d'entreprise
Posez votre question Signaler

Progammation en c de triangle de pascale

les_4400 - Dernière réponse le 14 févr. 2011 à 17:50
Bonjour,
j'ai un exercice sur la programmation en langage c du triangle de pascal qui me fatigue
j'aimerais avoir une structure plus simple
Lire la suite 

Progammation en c de triangle de pascale »

6 réponses
Réponse
+5
moins plus
Programme C++ [modifier]
#include <iostream>
#include <vector>

using namespace std;
typedef < vector< vector<int>> Matrice;

Matrice creerTableauPascal(int n)
{
// Création du tableau
Matrice tableau;
tableau.resize(n);
for (int i=0; i<n; i++)
tableau[i].resize(n);

// Remplissage du tableau
tableau[0][0]=1;
for (int i=1; i<n; i++)
{
tableau[i][0]=1;
tableau[i][i]=1;
for (int j=1; j<i; j++)
tableau[i][j]=tableau[i-1][j-1]+tableau[i-1][j];
}
return tableau;
}

void afficherTriangle(Matrice tableau)
{
int n = tableau.size();
for (int i=0; i<n; i++)
{
for (int j=0; j<=i; j++)
cout << tableau[i][j] << " ";
cout << endl;
}
}

int main()
{
int n=10;
Matrice tableau;
tableau = creerTableauPascal(n);
afficherTriangle(tableau);
return 0;
}
Ajouter un commentaire
Réponse
+1
moins plus
si vous desirez le faire avec des tableau c'est plus simple et lisible. si vous etes interesser voici mon mail "magnimbesse@yahoo.fr"
Ajouter un commentaire
Réponse
+0
moins plus
j'ai le programme principale mais je n'ai pas la fonction tri_pascal qu'on va appeler en main par ce que en fait cette fonction doit retourner une matrice et cette matrice doit étre allouer en meme fonction à l'aide de pointeur multi_dimensionnel par exemple int** T et je n'arrive pas a la syntaxe de ce type d'allocation et comment l'appelle passe a main sans probleme et je veux des propositions concernant ce probleme .....
voici le programme principale de triangle de pascal.....

#include<stdio.h>
#define N 40


void main()
{
int Tab[N][N];
int n,i,j;
do{
printf("donner le degre n= ");
scanf("%d",&n);
}while(n<0||n>40);




for(i=0;i<n;i++){


Tab[i][i]=1;
Tab[i][0]=1;
}


for(i=2;i<n;i++)
{
for(j=1;j<i;j++)
Tab[i][j]=Tab[i-1][j-1]+Tab[i-1][j];
}

for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)

printf("%d\t",Tab[i][j]);
printf("\n");

}
}
Ajouter un commentaire
Réponse
+0
moins plus
on peut faire une autre méthode si nous voulons une fonction de triangle de pascal et puis son appelle a la fonction principale ( main).

si on declare ce tableau de deux dimentions comme variable globale on peut resoudre le probleme :



#include<stdio.h>
#define N 40

int Tab[N][N];



void triangle_pascal(int n )
{
int n,i,j;
for(i=0;i<n;i++){


Tab[i][i]=1;
Tab[i][0]=1;
}


for(i=2;i<n;i++)
{
for(j=1;j<i;j++)
Tab[i][j]=Tab[i-1][j-1]+Tab[i-1][j];
}

for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)

printf("%d\t",Tab[i][j]);
printf("\n");

}

}

void main()
{
int n;

do{
printf("donner le degre n= ");
scanf("%d",&n);
}while(n<0||n>40);

triangle_pascal(n );

}
Ajouter un commentaire
Ce document intitulé « progammation en c de triangle de pascale » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?