Affichage d'un Triangle d'étoiles [Résolu]

sahadi2002 3 Messages postés samedi 15 novembre 2008Date d'inscription 23 novembre 2009 Dernière intervention - 22 nov. 2009 à 03:28 - Dernière réponse :  zizo
- 17 nov. 2015 à 21:42
Bonjour a tous, voila je cherche a afficher un triangle d'étoiles, on lit n au clavier et on affiche n lignes d'étoiles, la première contenant une, la deuxième deux..... mais pour les colonnes la nième colonne contient n étoile et lavant dernière n-1....,j'ai fais un petit programme qui tourne bien mais !!:

class triangle {
  public static void main(String[] args){
                 int n = Integer.parseInt(args[0]);
                 for(int i=n; i>0; i--){
                	 for(int j=0; j<=n-i; j++){
                	 System.out.print("*");
                	 }
                	 System.out.println("");
                }
  }
}

mais ce programme m'affiche ça : pour n=5 par exemple
*
**
***
****
*****

et ce qui est demander dans mon exercice c'est plutôt ça: pour n=5 par exemple
    *
   **
  ***
 ****
*****

merci de bien vouloir m'aider a trouver l'astuce de cet affichage
Afficher la suite 

8 réponses

Répondre au sujet
sahadi2002 3 Messages postés samedi 15 novembre 2008Date d'inscription 23 novembre 2009 Dernière intervention - 22 nov. 2009 à 11:57
0
Utile
Merci danimo pour votre réponse, ça marche parfaitement. moi je pensais que fallait juste jouer avec les deux boucles imbriquées for i et for j. je sais pas si c'est faisable avec seulement deux boucles? mais ça reste une solution juste encore merci
Commenter la réponse de sahadi2002
Utilisateur anonyme - 22 nov. 2009 à 21:17
0
Utile
Je suis certain qu'il y a d'autres solutions que ma bidouille adaptée à ce que tu avais programmé...

Cordialement,

...\ Dan /...
Commenter la réponse de Utilisateur anonyme
Utilisateur anonyme - 22 nov. 2009 à 21:42
0
Utile
Ps,

Tu peux aussi essayer ceci que j'ai oublié de te donner:

         for(int i = n; i > 0; i--)
         {
            for(int ii = 0; ii < i-1; ii++)
            {
               blancs = blancs + " ";
            }
            
            for(int j = 0; j <= n-i; j++)
            { 
               System.out.print(blancs + "*");
               blancs = "";
            }
            
            for(int j = 1; j <= n-i; j++)
            { 
               System.out.print("*");
            }
            System.out.println("");
         }


et qui est la combinaison de ce que tu avais avec ce que tu as maintenant et qui peut t'intéresser.

...\ Dan /...
Commenter la réponse de Utilisateur anonyme
sahadi2002 3 Messages postés samedi 15 novembre 2008Date d'inscription 23 novembre 2009 Dernière intervention - 23 nov. 2009 à 08:19
0
Utile
Encore merci pour tes réponses ça ma bcp aider.
Commenter la réponse de sahadi2002
kongraoul 40 Messages postés jeudi 29 mai 2008Date d'inscription 7 mai 2015 Dernière intervention - Modifié par Whismeril le 4/07/2014 à 18:51
0
Utile
1
Bonjour,
essaie plutot ca:



import java.util.Scanner;


public class Test {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
    int x, i,j;
          System.out.println("Rentrez le nombre de lignes du triangle :");
          Scanner sc = new Scanner(System.in);
          x = sc.nextInt();
          for(i=1;i<x+1;) {
              for(j=0;j<i;j++) {
               System.out.print("*");
              }
              i++;
              System.out.println("");
               
              
              }
          }
 }
Whismeril 11406 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 19 avril 2018 Dernière intervention - 4 juil. 2014 à 18:51
Bonjour, merci pour cette contribution, bien que la question soit résolue depuis 5 ans.
Par contre merci d'utiliser la coloration syntaxique, voir ici.
Commenter la réponse de kongraoul
Utilisateur anonyme - 22 nov. 2009 à 08:14
-1
Utile
1
Salut,
Tu peux faire ceci:
public static void main(String[] args)
      {
         String blancs = "";
         int n = Integer.parseInt(args[0]);
         for(int i = n; i > 0; i--)
         {
            for(int ii = 0; ii < i-1; ii++)
            {
               blancs = blancs + " ";
            }
            for(int j = 0; j <= n-i; j++)
            { 
               System.out.print(blancs + "*");
               blancs = "";
            }
            System.out.println("");
         } 
      }


Cordialement,


...\ Dan /...
cette n'a pas ete valide avec moi
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.