Structures itératives
Blennoragie
Messages postés
37
Statut
Membre
-
Blennoragie Messages postés 37 Statut Membre -
Blennoragie Messages postés 37 Statut Membre -
Bonjour,
je révise et tente de faire le programme suivant :
Ecrire un programme qui affiche un triangle isocèle de $n$ lignes, rempli d'étoiles. Exemple :
hauteur : 6
*
***
*****
*******
*********
***********
(le triangle est isocele, il y a des espaces avant les étoiles)
Je l'ai déjà fais en cours, mais je n'y arrive pas dès qu'il y a une histoire d'espace (que ce soit ce genre de triangle ou les carré par exemple).
J'ai écris cela :
#include <stdio.h>
#include <stdlib.h>
int main(void){
int ligne,hauteur,espace;
printf("Hauteur du triangle : ");
scanf("%d",&hauteur);
for(ligne=0;(hauteur-1-ligne)>0;ligne++){
printf(" ");
for(ligne=0;((ligne+1)*2)<(hauteur*2+1);ligne++){
printf("*");}
printf("\n");}
return EXIT_SUCCESS;
}
Mais, évidemment ca ne marche pas, 2h que je modifie, recommence à zéro, j'essaie de trouverle truc sur papier, je bloque à chaque fois, donc là je demande votre aide.
merci
je révise et tente de faire le programme suivant :
Ecrire un programme qui affiche un triangle isocèle de $n$ lignes, rempli d'étoiles. Exemple :
hauteur : 6
*
***
*****
*******
*********
***********
(le triangle est isocele, il y a des espaces avant les étoiles)
Je l'ai déjà fais en cours, mais je n'y arrive pas dès qu'il y a une histoire d'espace (que ce soit ce genre de triangle ou les carré par exemple).
J'ai écris cela :
#include <stdio.h>
#include <stdlib.h>
int main(void){
int ligne,hauteur,espace;
printf("Hauteur du triangle : ");
scanf("%d",&hauteur);
for(ligne=0;(hauteur-1-ligne)>0;ligne++){
printf(" ");
for(ligne=0;((ligne+1)*2)<(hauteur*2+1);ligne++){
printf("*");}
printf("\n");}
return EXIT_SUCCESS;
}
Mais, évidemment ca ne marche pas, 2h que je modifie, recommence à zéro, j'essaie de trouverle truc sur papier, je bloque à chaque fois, donc là je demande votre aide.
merci
3 réponses
Une structure du type:
Bonne réflexion.
for (ligne=0; ...; ligne++)
{
for (ligne=0;...; ligne++)
...
} ne fonctionne jamais... sauf exception bien sûr.
Bonne réflexion.
J'ai réussi, voilà mon prog final :
#include <stdio.h>
#include <stdlib.h>
int main(void){
int ligne,hauteur,espace,etoile;
printf("Hauteur du triangle : ");
scanf("%d",&hauteur);
for(ligne=0;ligne<hauteur;ligne++)
{
for(espace=0;espace<hauteur-1-ligne;espace++)
{
printf(" ");
}
for(etoile=0;etoile<1+2*ligne;etoile++)
{
printf("*");
}
printf("\n");
}
return EXIT_SUCCESS;
}
#include <stdio.h>
#include <stdlib.h>
int main(void){
int ligne,hauteur,espace,etoile;
printf("Hauteur du triangle : ");
scanf("%d",&hauteur);
for(ligne=0;ligne<hauteur;ligne++)
{
for(espace=0;espace<hauteur-1-ligne;espace++)
{
printf(" ");
}
for(etoile=0;etoile<1+2*ligne;etoile++)
{
printf("*");
}
printf("\n");
}
return EXIT_SUCCESS;
}