bonjour j ai un petit probleme j ai reussi a faire un code pour faire une pyramide en visual c++ que voici
#include<stdio.h>
void main()
{
int n,j,i;
printf("ecrire nombre de ligne : ");
scanf("%d",&n);
printf("\n");
for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=(2*i)-1;j++)
{
printf("x");
}
printf("\n");
}
printf("\n\n\n\n");
}
mais je n arrive pas a faire le meme code mais il faut que l'étoile commence comme ceci l etoile le plus haut doit etre a gauche(pivoter la pyramide vers la gauche)
L'exercice de la pyramide est un grand classique.
Je te conseille de découper ton problème.
1) Fais un fonction qui prend en argument un nombre et un caractère et qui écrit le caractère autant de fois que demandé.
void printChar(char c, int nb);
2) Si tu es observateur, tu verras que le nombre d'étoile et le nombre d'espace à gauche est identique. On va donc utiliser l'astuce suivante:
On va d'abord dessiner la pyramide sans prendre en compte les espaces. Tu remarqueras que le nombre d'étoile grandi de 2 à chaque étage.
Ex:
*
***
*****
*******
3) Une fois que tu as réussi l'étape 2, on modifie le code pour ajouter des espaces, sachant que pour chaque étage, le nombre d'espace diminue.
Ex (3, puis 2, puis 1, puis 0):
...*
..***
.*****
*******
Et voilà, à toi de coder maintenant.
_____________________________________________
Historique de mes créations, et quelques articles:[ http://0217021.free.fr/portfolio
http://0217021.free.fr/portfolio]