Bonsoir à tous chers developpeurs,

voilà je me remets gentillement à la programmation, et je fais mes premiers pas en C++. En voulant reprendre un ancien exercice sur le triangle de Pascal, je me trouve confronter à un problème lors de mon affichage, le triangle ne s'affiche pas correctement,...

J'ai créé mon petit programme avec une fonction récursive et une fonction qui permet d'afficher justement mes valeurs prises lors de l'appel de mon fct récursive. 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 :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
 
// 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 <iostream>
#include <iomanip>
#include <cstdlib>
//------------------------------------------------------------------------------
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 **/
Merci pour toutes vos futures réponses
Amicalement Philou