trouvez les valeurs distinctes dans un vecteur ?

trouvez les valeurs distinctes dans un vecteur ? - Java - Programmation

Marsh Posté le 29-11-2003 à 14:39:29    

voila j'arrive pas à ce qu'il m'affiche le nombre de valeurs disctinctes dans ce vecteur .

Code :
  1. public class boulet
  2. {
  3.   public static void main(String[] args) {
  4.     int tabA[];
  5.     int nInt;
  6.     int temp[];
  7.     int i = 0;
  8.     int n = 0;
  9.     int valDis, nbVD = 0;
  10.     do {
  11.       System.out.print("Taille du vecteur :" );
  12.       n = Clavier.lireInt();
  13.     }
  14.     while (n < 1);
  15.     tabA = new int[n];
  16.     //initialisation du vecteur
  17.     for (i = 0; i < tabA.length; i++) {
  18.       tabA[i] = (int) (Math.random() * 10) + 1;
  19.       System.out.print(tabA[i] + "  " );
  20.     }
  21.     for (i = 0; i < tabA.length; i++)
  22.     {
  23.       do
  24.       {
  25.       nbVD++ ;
  26.       }
  27.       while(i+1 != i);
  28.     }
  29.     System.out.print("il y a " + nbVD + "valeurs distinctes" );
  30.   }
  31. }


Message édité par uxam le 29-11-2003 à 14:39:50

---------------
PSN ID : Euronimus | Steam ID : [HFR] Euronimus | uplay: HFR_uxam
Reply

Marsh Posté le 29-11-2003 à 14:39:29   

Reply

Marsh Posté le 29-11-2003 à 14:50:50    

Code :
  1. while(i+1 != i);


 
 
[:--greg--]
 
bon sinon y'a presque rien de juste, ecrit l'algo sur papier

Reply

Marsh Posté le 29-11-2003 à 14:53:40    

chrisbk a écrit :

Code :
  1. while(i+1 != i);


 
 
[:--greg--]
 
bon sinon y'a presque rien de juste, ecrit l'algo sur papier

comme quoi ?


---------------
PSN ID : Euronimus | Steam ID : [HFR] Euronimus | uplay: HFR_uxam
Reply

Marsh Posté le 29-11-2003 à 14:56:30    

exemple :
 

Code :
  1. for (i = 0; i < tabA.length; i++)
  2. {
  3. do
  4. {
  5. nbVD++ ;
  6. }
  7. while(i+1 != i);
  8. }


 
ca.
 
c'est un ramassis de conneries, si tu te rends pas compte du ridicule qu'il y a a ecrire while(i+1 !=i) y'a un serieux pb.
 
(en plus tu lis meme pas dans ton tableau, pour trouver les valeurs distinctes ca doit etre pratique)
 
bref, n'imp :o


Message édité par chrisbk le 29-11-2003 à 15:00:07
Reply

Marsh Posté le 29-11-2003 à 15:01:03    

chrisbk a écrit :

Code :
  1. while(i+1 != i);


[:--greg--]


 
[:jofusion]

Reply

Marsh Posté le 30-11-2003 à 15:54:27    

help j'ai toujours pas trouvé  :(

Reply

Marsh Posté le 30-11-2003 à 16:08:38    

c'est une blague ?

Reply

Marsh Posté le 30-11-2003 à 16:12:13    

non

Reply

Marsh Posté le 30-11-2003 à 16:13:03    

while(i+1 != i);
 
ca te semble pas cretin?

Reply

Marsh Posté le 30-11-2003 à 16:19:56    

chrisbk a écrit :

while(i+1 != i);
 
ca te semble pas cretin?
 

oui ca j'ai compris... mais je comprends comment faire pour qu'il me donne les nb distincts

Reply

Marsh Posté le 30-11-2003 à 16:19:56   

Reply

Marsh Posté le 30-11-2003 à 16:22:30    

ben deja commence parlire dans ton tableau [:kiki]

Reply

Marsh Posté le 30-11-2003 à 16:23:23    

chrisbk a écrit :

ben deja commence parlire dans ton tableau [:kiki]

oué ca c fait

Reply

Marsh Posté le 30-11-2003 à 16:24:52    

??
 
ben refiles nous ton code actuel ([:sisicaivrai])

Reply

Marsh Posté le 30-11-2003 à 16:29:50    

j'ai juste enlever le while et jai mis pour qu'il lise dans le tableau

Reply

Marsh Posté le 30-11-2003 à 16:36:50    

jai pas envie de jouer aux devinettes, post ton foutu code :o

Reply

Marsh Posté le 30-11-2003 à 16:38:23    

uxam a écrit :

j'ai juste enlever le while et jai mis pour qu'il lise dans le tableau


 
c'est le bordel dans ton code, fait le ménage dans tes variables, fou des commentaires pour expliquer a quoi elle te serve nétoy tes boucles et reposte ton code.

Reply

Marsh Posté le 30-11-2003 à 16:42:29    

Code :
  1. public class vecteur
  2. {
  3.   public static void main(String[] args)
  4.   {
  5.     int tab[];
  6.     int nInt;
  7.     int i = 0;
  8.     int valDis = 0;
  9.     int nbVD = 0;
  10.     //on entre le nombre d'élements de le tableau
  11.     do
  12.     {
  13.       System.out.print("Nombre d'entiers :" );
  14.       i = Clavier.lireInt();
  15.     }
  16.     while (i < 1);
  17.     tab = new int[i];
  18.     //initialisation du vecteur avec des entiers de 1 à 10
  19.     for (i = 0; i < tab.length; i++)
  20.       {
  21.         tab[i] = (int) (Math.random() * 9) + 1;
  22.         System.out.print(tab[i] + "  " );
  23.       }
  24.     //on parcoure le tableau à la recherche des valeurs distinctes
  25.     for (i = 0; i < tab.length; i++)
  26.       if(tab[i+1] != tab[i])
  27.       {
  28.         nbVD++;
  29.       }
  30.     System.out.println("il y a " + nbVD + " valeurs distinctes" );
  31.   }
  32. }

Reply

Marsh Posté le 30-11-2003 à 16:48:23    

me dit rien, ca te renvoie un ArrayOutOfBound ?

Reply

Marsh Posté le 30-11-2003 à 16:50:22    

oui

Reply

Marsh Posté le 30-11-2003 à 16:50:34    

uxam a écrit :

Code :
  1. public class vecteur
  2. {
  3.   public static void main(String[] args)
  4.   {
  5.     int tab[];
  6.     int nInt;
  7.     int i = 0;
  8.     int valDis = 0;
  9.     int nbVD = 0;
  10.     //on entre le nombre d'élements de le tableau
  11.     do
  12.     {
  13.       System.out.print("Nombre d'entiers :" );
  14.       i = Clavier.lireInt();
  15.     }
  16.     while (i < 1);
  17.     tab = new int[i];
  18.     //initialisation du vecteur avec des entiers de 1 à 10
  19.     for (i = 0; i < tab.length; i++)
  20.       {
  21.         tab[i] = (int) (Math.random() * 9) + 1;
  22.         System.out.print(tab[i] + "  " );
  23.       }
  24.     //on parcoure le tableau à la recherche des valeurs distinctes
  25.     for (i = 0; i < tab.length; i++)
  26.       if(tab[i+1] != tab[i])
  27.       {
  28.         nbVD++;
  29.       }
  30.     System.out.println("il y a " + nbVD + " valeurs distinctes" );
  31.   }
  32. }




 
 

Code :
  1. for (i = 0; i < tab.length; i++)
  2.             if(tab[i+1] != tab[i])
  3.             {
  4.                 nbVD++;
  5.             }


 
ca compare que le suivant à celui d'apres style t'as
 
3 4 3 4 3 4
 
ca va te renvoyer 5...
 
ta pas un index out of range aussi ?

Reply

Marsh Posté le 30-11-2003 à 16:50:56    

chrisbk a écrit :

me dit rien, ca te renvoie un ArrayOutOfBound ?


lol grillayd
 
edit un indice : tab[i+1]


Message édité par EpoK le 30-11-2003 à 16:51:57
Reply

Marsh Posté le 30-11-2003 à 16:51:12    


 
et j'imagine que ca te surprend ?

Reply

Marsh Posté le 30-11-2003 à 16:57:21    

c paceke il sort du tableau avec ca  ?

Reply

Marsh Posté le 30-11-2003 à 17:08:44    

Roh putain, comment il est collector, çui-là :lol:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 30-11-2003 à 17:11:56    

uxam a écrit :

c paceke il sort du tableau avec ca  ?  


 
 [:meganne]

Reply

Marsh Posté le 30-11-2003 à 17:13:21    

ok mais j'arrive toujours pas à trouver le nombre de valeur distinctes

Reply

Marsh Posté le 30-11-2003 à 17:13:50    

bon, comment tu ferais a la main ?

Reply

Marsh Posté le 30-11-2003 à 17:18:13    

ben je regarde tous les chiffres et si j'en ai déja vu 1 je le compte pas

Reply

Marsh Posté le 30-11-2003 à 17:19:52    

uxam a écrit :

ben je regarde tous les chiffres et si j'en ai déja vu 1 je le compte pas


 :(  
 
détaille du pseudo code en français, pas une vague idée.
 
Si dans ton esprit c'est flou, t'es mal barré.


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
Reply

Marsh Posté le 30-11-2003 à 20:48:13    

il faut stock les valeurs que tu as déjà vu dans un autre vecteur (par exemple)  
comparer i et i+1 ne compare pas toutes les valeurs entre elles...  
 
Si tu as le temps, achète un bouquin et fait du pseudo code (papier) AVANT d'attaquer techniquement la résolution de problème.
 
Il y a plein de tutos, d'exercice, etc.. Mais avant, il faut avoir les bases

Reply

Marsh Posté le 30-11-2003 à 23:46:40    

ben nan, juste une double boucle [:spamafote]
 
mais bon, là c'est de l'algo base de chez base, quoi [:w3c compliant]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 30-11-2003 à 23:49:55    

de base en effet...

Reply

Marsh Posté le 01-12-2003 à 10:08:51    

Il peut aussi wrapper les int dans des Integer, puis ajouter toute sa collection dans un Set et compter le nombre d'éléments du Set.
 
[:dehors]


---------------
Le site de ma maman
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed