Rectangle de X

Fermé
karfung - 15 oct. 2008 à 15:09
 karfung - 5 nov. 2008 à 00:46
Bonjour à tous,
Voilà, je dois faire un exercice de programmation en langage C. Il s'agit d'afficher à l'écran un rectangle de X.
Voici les consignes :

Ecrivez un programme qui affiche un rectangle rempli de "X", de dimensions fournies en entrée.

Exemple :
-en entrée ...
4
6
-en sortie ...
XXXXXX
XXXXXX
XXXXXX
XXXXXX

Mon code source est le suivant :

long colonne = 0, ligne = 0;

scanf("%ld", &ligne);
scanf("%ld", &colonne);

do
{
do
{
printf("X");
ligne--;
}
while(ligne > 0);
colonne--;
printf("\n");
}
while(colonne > 0);


Merci d'avance pour votre aide !

Karfung
A voir également:

3 réponses

Merci beaucoup de vos réponses ! En effet, vos codes sources sont corrects et la console affiche bien un rectangle de X en fonction du nombre de lignes et de colonnes entrées. Je crois que j'ai compris où était mon erreur. En fait, au début, j'avais aussi essayé de mettre deux variables ligne et nb_lignes mais bon ça ne marchait pas. Je m'étais peut-être trompé quelque part. En tout cas, encore merci pour votre aide ! ^^
@+ sur les forums !!!
Karfung
0
Résolu
0
Mikey_UFC Messages postés 312 Date d'inscription jeudi 8 mars 2007 Statut Membre Dernière intervention 2 août 2010 1
15 oct. 2008 à 16:05
Salut,

Ca fait longtemps que je n'ai pas fait de C, mais je dirais que tu dois utiliser une 2ème variable pour stocker le nombre de lignes à afficher ( nb_ligne ).

Et tu remet nb_ligne à ligne au début de ton 1er do
 long colonne = 0, ligne = 0, nb_ligne = 0;

scanf("%ld", &nb_ligne);
scanf("%ld", &colonne);

do
{
ligne = nb_ligne;
do
{
printf("X");
ligne--;
}
while(ligne > 0);
colonne--;
printf("\n");
}
while(colonne > 0); 
-1
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 377
15 oct. 2008 à 16:17
salut
il faut que tu fasse une boucle imbriquée...
essaie cela:
#include <stdio.h>
int main()
{int col;
int lig;
int i,j;
j=0;
printf("nbre col:\n");
scanf("%d",&col);
printf("nbre lig:\n");
scanf("%d",&lig);
for(j;j<lig;j++)
{i=0;
for(i;i<col;i++)
{printf("X");}
printf("\n");
}

getchar();
return 1;
}
-1