Trier les noms par ordre alphabétique

Messages postés
327
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
10 mai 2012
- - Dernière réponse : cs_domxaline
Messages postés
327
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
10 mai 2012
- 13 oct. 2009 à 18:39
bonjour
but de mon prg est:
utilisateur entre une série de noms,puis programme affiche ces noms par ordre alphabétique
j'écris le prg suivant;aidez moi pour continuer s'il vous plaît
package Mypackage;
import java.util.*;
//import java.util.Random;
//import java.util.Scanner;
//import java.util.regex.*; 
public class autre 
{
    public static void main(String[]args)
    {
     Scanner sc=new Scanner(System.in);
   	 String saisie;
   	 do
   	 {
   		 System.out.println("Entrez un nouvel nom:");
   		 saisie=sc.nextLine();
   	 }
   	 while(!saisie.contentEquals("0")); 
   	 System.out.println("vous avez saisie 0 fin de saisie:"); 
     Arrays.sort(saisie);
     for(int i=0;i<saisie.length();i++)
     {
    	 System.out.println(saisie);
     }
     
    }  
}



aidez moi s'il vous plaît
Afficher la suite 

7 réponses

Messages postés
58
Date d'inscription
mardi 4 août 2009
Statut
Membre
Dernière intervention
9 janvier 2011
0
Merci
salut mon ami votre prg est le suivant :

import java.util.*;
import java.util.Scanner;

public class autre
{
    public static void main(String[]args)
    {
     Scanner sc=new Scanner(System.in);
     Vector VV=new Vector();
   	 String saisie;

   	 do
   	 {
   		 System.out.println("entrez un nouvel nom:");
   		 saisie=sc.nextLine();
                 VV.add(saisie);
   	 }
   	 while(!saisie.equals("0"));
   	 System.out.println("vous avez saisie 0 fin de saisie:");

         String inter[]=new String[VV.size()];
         VV.copyInto(inter);

     Arrays.sort(inter);
     for(int i=1;i<inter.length;i++)
     {
    	 System.out.println(inter[i]);
     }

    }
}

Commenter la réponse de ouabida10
0
Merci
Salut,

Tout ce qui est affiché avec
import java.util.*;

    public class TriSerieDeNoms 
   {
       //public static void main(string[]args) // ***
       public static void main(String[]args)
      {
         String[] tableauDeNoms = new String[6]; // Ce tableau est initialisé pour 6 éléments tous null
         // Ce qui fait que si on quitte avant qu'il soit plein les derniers éléments seront null
         // et Arrays.sort n'aime pas du tout...
         // Nous allons donc initialiser tous les éléments du tableau a espace
         int i = 0;
         for (i = 0; i < tableauDeNoms.length; i++)
            tableauDeNoms[i] = " ";
         
         
        Scanner sc=new Scanner(System.in);
         String saisie = "";
         
         // do
         // {
         //  ....
         //  ....
         // }while(!saisie.equals("0"));
         // ne convient pas car on ne gere pas la fin de saisie par longueur du tableau atteinte
         
      // Préférons:
      
         i = 0;
         while(i < tableauDeNoms.length)
         {
            System.out.println("entrez un nom (ou 0 pour terminer:)");
            saisie = sc.nextLine();
            System.out.println("saisie : " + saisie);
            if (saisie.equals("0"))
               break;
            else
            {
               tableauDeNoms[i] = saisie;
               //System.out.println("tableauDeNoms[" + i + "]: " + tableauDeNoms[i]);
               i++;
            }
         }
         
         System.out.println("vous avez saisie 0 ou le tableau est plein. Fin de saisie.");
      
         System.out.println("\nAVANT LE TRI:");
         for(i = 0; i<tableauDeNoms.length; i++)
         {
            System.out.println(i + " " + tableauDeNoms[i]);
         }
         
         Arrays.sort(tableauDeNoms);
         
         System.out.println("\nRESULTAT APRES LE TRI:");
         for(i = 0; i<tableauDeNoms.length; i++)
         {
            System.out.println(i + " " + tableauDeNoms[i]);
         }
      }
   }

ne respecte plus les majuscules, alors je renonce à les utiliser.

Tu peux tester cette classe:

import java.util.*;

public class TriSerieDeNoms
{
//public static void main(string[]args) // ***
public static void main(String[]args)
{
String[] tableauDeNoms = new String[6]; // Ce tableau est initialisé pour 6 éléments tous null
// Ce qui fait que si on quitte avant qu'il soit plein les derniers éléments seront null
// et Arrays.sort n'aime pas du tout...
// Nous allons donc initialiser tous les éléments du tableau a espace
int i = 0;
for (i = 0; i < tableauDeNoms.length; i++)
tableauDeNoms[i] = " ";


Scanner sc=new Scanner(System.in);
String saisie = "";

// do
// {
// ....
// ....
// }while(!saisie.equals("0"));
// ne convient pas car on ne gere pas la fin de saisie par longueur du tableau atteinte

// Préférons:

i = 0;
while(i < tableauDeNoms.length)
{
System.out.println("entrez un nom (ou 0 pour terminer:)");
saisie = sc.nextLine();
System.out.println("saisie : " + saisie);
if (saisie.equals("0"))
break;
else
{
tableauDeNoms[i] = saisie;
//System.out.println("tableauDeNoms[" + i + "]: " + tableauDeNoms[i]);
i++;
}
}

System.out.println("vous avez saisie 0 ou le tableau est plein. Fin de saisie.");

System.out.println("\nAVANT LE TRI:");
for(i = 0; i<tableauDeNoms.length; i++)
{
System.out.println(i + " " + tableauDeNoms[i]);
}

Arrays.sort(tableauDeNoms);

System.out.println("\nRESULTAT APRES LE TRI:");
for(i = 0; i<tableauDeNoms.length; i++)
{
System.out.println(i + " " + tableauDeNoms[i]);
}
}
}

Cordialement,


...\ Dan /...
Commenter la réponse de Utilisateur anonyme
Messages postés
327
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
10 mai 2012
0
Merci
bonjour
pour ouabida10:
j'ai essayé ton programme,il me dit erreur suivant lors d'une compilation

Exception in thread "main" java.lang.Error: Unresolved compilation problems:
scanner cannot be resolved to a type
scanner cannot be resolved to a type
system cannot be resolved
vector cannot be resolved to a type
vector cannot be resolved to a type
string cannot be resolved to a type
system cannot be resolved
system cannot be resolved
string cannot be resolved to a type
string cannot be resolved to a type
arrays cannot be resolved
system cannot be resolved

at Mesessaies.Toi1.main(Toi1.java:8)
 scanner sc=new scanner(system.in);
Commenter la réponse de cs_domxaline
Messages postés
327
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
10 mai 2012
0
Merci
salut danimo:
pour le 1er programme j'ai erreur suivantes:

Exception in thread "main" java.lang.Error: Unresolved compilation problems:
string cannot be resolved to a type
string cannot be resolved to a type
scanner cannot be resolved to a type
scanner cannot be resolved to a type
system cannot be resolved
string cannot be resolved to a type
system cannot be resolved
system cannot be resolved
system cannot be resolved
system cannot be resolved
system cannot be resolved
arrays cannot be resolved
system cannot be resolved
system cannot be resolved

at Mesessaies.Toi1.main(Toi1.java:8)
 string[] tableaudenoms = new string[6]; 


pour le 2eme programme:
marche bien merci
Commenter la réponse de cs_domxaline
0
Merci
Salut dom,
Ces erreurs viennent du fait que lors de l'utilisation des balises
 on perd les majuscules, c'est pour ca que je ne les utilise pas lors de l'envoi du 2ème code (le même en fait).


Cordialement,


...\ Dan /...
Commenter la réponse de Utilisateur anonyme
0
Merci
Salut,
Juste un petit test qui montre que la correction à été faite et que
 fonctionne normalement...


import java.util.*; 

public class TriSerieDeNoms 
{ 
//public static void main(string[]args) // *** 
public static void main(String[]args) 
{ 
String[] tableauDeNoms = new String[6]; // Ce tableau est initialisé pour 6 éléments tous null 


Cordialement,


...\ Dan /...
Commenter la réponse de Utilisateur anonyme
Messages postés
327
Date d'inscription
jeudi 21 août 2008
Statut
Membre
Dernière intervention
10 mai 2012
0
Merci
ok ça marche
Commenter la réponse de cs_domxaline