Boucles for

Blennoragie Messages postés 37 Statut Membre -  
Blennoragie Messages postés 37 Statut Membre -
Bonjour,

Je dois faire un programme suivant :

Ecrire le programme correspondant à la session suivante :

votre choix (triangle -> t; carre -> c; quitter -> q) : t
hauteur : 4

*
**
***
****

votre choix (triangle -> t; carre -> c; quitter -> q) : c
hauteur : 5

*****
*   *
*   *
*   *
*****

votre choix (triangle -> t; carre -> c; quitter -> q) : q
aurevoir


#include <stdio.h>
#include <stdlib.h>

int main(void)

{

  char x,t,c,q; 
  int hauteur,ligne,etoile,espace;

  printf("Votre choix (triangle -> t; carre -> c; quitter -> q) : ");
  scanf("%c",&x);

  if(x=t)
    {
      printf("Hauteur : ");
      scanf("%d",&hauteur);
      for(ligne=0;ligne<hauteur;ligne++)
	{
	  for(etoile=0;etoile<1+ligne;etoile++)
	    {
	      printf("*");
	    }
	  printf("\n");
	}
    }

  if(x=c)
    {
      printf("Hauteur : ");
      scanf("%d",&hauteur);
      for(etoile=0;etoile<hauteur;etoile++)
	{
	  printf("*");
	  for(ligne=0;ligne<hauteur-2;ligne++)
	    {
	      printf("*");
	      for(espace=0;espace<hauteur-2;espace++)
		{
		  printf(" ");
		}
	    }
	  printf("*");
	}
    }

  if(x=q)
    {
      printf("Au revoir");
    }

  return EXIT_SUCCESS;

}


Je ne sais pas encore s'il marche (j'ai peur pour le carré surtout), car quoique je tape au début, il me fait le triangle. Donc j'aimerai savoir d'où vient l'erreur. Pourquoi c'est toujours le 1er "if" qui se lance ?

Merci d'avance,
A voir également:

2 réponses

loupius Messages postés 789 Statut Membre 148
 
J'ai essayé le programme suivant:
int main()
{
  if (test_remerciement (post_précédent))
    printf ("OK, je vais t'aider");
  else
  {
    printf ("Bonne continuation");
    return (EXIT_FAILURE);
  }
  return (EXIT_SUCCESS);
}
Et voici le résultat:
Bonne continuation.
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
t'as oublié #include <stdio.h> et #include <lccm.h>.
N'oublie pas d'utiliser -lc pour compiler. ^^
Cdlt
0
loupius Messages postés 789 Statut Membre 148 > fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention  
 
Ah, c'est peut-être pour cela que le programme se termine mal ;-)
Bonne soirée.
0
Blennoragie Messages postés 37 Statut Membre 6
 
J'aurais tout autant préféré que tu t'abstiennes. Si tu n'es pas là pour répondre aux questions demandées avec respect, tu peux déguerpir.
0
Où es-tu Mr Wirth ?
 
Salut
Pourquoi te lances-tu dans un langage sans en apprendre les bases ?

Mais comme je suis dans un bon jour, je vais te filer un indice pour ton premier problème : glisse donc un printf de tes variables (x et c juste apres si(x=c), x et t juste après si(x=t) et x et q juste après si(x=q)) pour comprendre pourquoi tu entres dans telle ou telle alternative.
0