Tout d'abord sorry de n'être pas plus présent sur le fofo, mais le temps me manque... (ca m'énerve) mais heureusement je peux profiter d'heure en plus pour bosser sur mes différents projets ^^ (vive le changement d'heures)
Bon, maintenant venons à ce que m'amène sur ce sujet, je me mets à la programmation orientation objet en C++, bon je sais pour les puristes, y a beaucoup mieux pour la POO (JAVA, EIFFEL), mais bon je me dis que ne connaître plusieurs langages ca peut aider, bref tout cette tartine pour vous dire que je me suis replonger dans de vieux exos (bien sur que j'avais pas fait) pour me plonger dans le C++, et justement sur la fct du triangle de Pascal, et en récursive (pas compliqué, j'avais le calcul à portée de main), mais j'ai un soucis au niveau de l'affichage
et je n'arrive pas à déterminé où se trouve pas mon soucis, est-ce que c'est ma fonction récursive, ou si c'est dans ma fonction d'affichage.
J'ai regardé des exemples de codes, et il me semble que je suis pas trop loin du bon résultat, mais je ne vois pas ou ca coince, alors si vous pouvez me filer un coup de main, ce serait cool...
je vous mets le code ci-dessous :
// Nom du fichier : Exos2.cpp
//
// Description : Réaliser en fct récursive pour afficher le traingle de Pacal
// fct récursive Cij = Ci-1j-1 + Ci-1,j
//
// Auteur : Philippe Bovey
//
// Date : 26.09.2010
//
// Dernière Modofication : 30.10.2010
//
// Version Finie ? (O/N) : N
/******************************************************************************/
#include
#include
#include
//------------------------------------------------------------------------------
using namespace std;
//------------------------------------------------------------------------------
int coeffBinomial(int i, int j)
{
if(j == 0 || j == i)
return 1;
else
return coeffBinomial(i - 1, j - 1) + coeffBinomial(1 - 1, j);
}
//------------------------------------------------------------------------------
void afficherTrianglePascal(int n)
{
int val_l = n;
int val_aff;
// affiche la ligne indique le nombre de colonne
cout << setw(6);
for(int i = 0; i < n ; ++i)
cout << i << setw(3);
cout << endl;
// affiche la ligne séparatrice
cout << " ";
for(int i = 0; i < n ; ++i)
cout << "---";
cout << endl;
// doit afficher ligne après ligne
for(int x = 0; x < n; ++x)
{
// affiche le premier de chiffre de chaque colonne
cout << setw(2) << x << " |";
for(int y = 0; y <= x; ++y)
cout << " " << coeffBinomial(x, y) << setw(3);
cout << endl;
}
}
//------------------------------------------------------------------------------
int main()
{
int nLignes = 0;
cout << "Triangle de Pascal" << endl;
cout << "==================" << endl;
cout << "Saisir le nombre de lignes souhait\202 (entre 1 et 15 inclus) : ";
cin >> nLignes;
cout << endl;
afficherTrianglePascal(nLignes);
cout << endl;
system("pause");
return EXIT_SUCCESS;
}
/************************************************************ FIN DU FICHIER **/
[/code]
Merci de m'avoir lu,
A tout bientôt