Afficher une ligne d'étoiles en langage c.

Fermé
bry - 5 oct. 2011 à 20:27
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 - 8 oct. 2011 à 09:37
Bonjour,

etant debutant :p

je souhaiterais ecrire un programme permettant d'afficher N étoiles sur une ligne; N etant demandé a l'utilisateur. Pour l'instant j'ai ecris ca :


#include <iostream>

using namespace std;

int main()
{
int nbr_etoile
cout<<"combien d'etoiles voulez-vous aficher?"<<endl;
cin>>nbr_etoile;
cout<<

return 0;
}



Je suis bloqué. Pourriez vous m'aidez. merci d'avance!

3 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
Modifié par KX le 5/10/2011 à 20:37
Remarque : c'est du C++ que tu fais, pas du C !
Utilises une boucle ! (voir Langage C++ Les structures conditionnelles)
La confiance n'exclut pas le contrôle
0
merci KX je vais chercher du coté de la boucle for.
0
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
5 oct. 2011 à 21:22
la syntaxe du while est peut être plus intuitive pour quelqu'un qui decouvre, regarde ces 2 boucles et voit laquelle tu préfère ;-)
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
5 oct. 2011 à 21:24
Le choix de l'une ou l'autre ne doit pas être une question de préférence, les deux s'utilisent dans des cas différents, et en l'occurrence dans ce cas la boucle for est bien plus adaptée que la boucle while.
0
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
5 oct. 2011 à 21:34
je te fais confiance, tu en connais sans doute plus que moi ;-)
je sus totalement d'accord pour dire que le for est plus adapté, mais moins "intuitif" à mon sens pour quelqu'un qui découvre les boucles
0
merci grace a vos conseils j'ai réussi a afficher ma ligne ;)
maintenant je souhaiterais afficher un triangle d'etoiles dont le nombre de lignes sera demandé a l'utilisateur. jai écris ca:

{
int i,compt_i,j, nmbr_etoile;
cout<<"combien de lignes?"<<endl;
cin>>compt_i;

for (i=0;i<compt_i;i++)
{
cout<<"*";
cout<<endl;
for(j=0;i<nmbr_etoile;j++)
{
cout<<"*";
cout<<endl;
}

}


return 0;
}
La seule chose qui s'affiche c'est une colonne d'etoiles. Ce qui me manque ce de reussir a ajouter une etoile a chaque ligne. Pouvez vous m'indiquer ce qui cloche dans mon code? Merci
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
8 oct. 2011 à 00:05
for(j=0;i<nmbr_etoile;j++) // ce n'est pas i mais j...
0
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
8 oct. 2011 à 07:54
de plus à aucun moment tu n'initialise nmbr_etoile
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
8 oct. 2011 à 09:37
nmbr_etoile qui ne va pas forcément servir d'ailleurs, parce que s'il est fixe on aura un rectangle.
Or comme c'est un triangle que l'on veut, ce nmbr_etoile devra varier de ligne en ligne.
0