Resalut a vous les masters java , question de newbie 2eme volet :

Resalut a vous les masters java , question de newbie 2eme volet : - Java - Programmation

Marsh Posté le 12-12-2002 à 20:43:41    

Salut all,
Donc voila en preparant mes partiels pour samedi ... je me suis refait des exos de java ... (je suis en Deug MATH/INFO 1 ere année) et la "MALHEUR" : Un rebel ! un exo trop rebel pour moi j'ai donc decider de faire appel a vous ! Voila l'ennoncé :

Citation :

Ecrire une methode "int[] toIntArray (IntList list)" qui convertisse une liste d'entiers en un tableau d'entiers contenant les memes elements dans le meme ordre


 
VOila voila ... en esperant un tit coup de main ...
MERCI !  :jap:


---------------
Don't Worry... Mais Surtout... Be Happy ! lol
Reply

Marsh Posté le 12-12-2002 à 20:43:41   

Reply

Marsh Posté le 12-12-2002 à 20:47:46    

et ben tiens. tu crois que c'est comme ca que tu vas apprendre ?
 
c'est franchement pas complexe en plus.
 
Si t'as des points précis sur lesquels tu bloque ok, mais di c'est la soluce toute faite que tu veux  :non:

Reply

Marsh Posté le 12-12-2002 à 20:53:34    

Bha voila comment je voit les choses :

Code :
  1. public static int[] toIntArray(IntList list){
  2.     int i = 0;
  3.     int[] table;
  4.     while(!list.isEmpty()){
  5.       table = new int[i+1]; 
  6.       table[i] = list.first();
  7.       i++;
  8.       list = list.rest();
  9.     }
  10.     return table;
  11.   }


mais c po ca: )


---------------
Don't Worry... Mais Surtout... Be Happy ! lol
Reply

Marsh Posté le 12-12-2002 à 21:22:40    

ouais mais bon là c'est que tu connais vraiment pas java. prend un bouquin et apprend sinon tu seras toujours bloqué !
 
http://penserenjava.free.fr => traduction française d'un excellent bouquin.
 
sinon, là ca risque pas de marcher parce que tu construit ton tableau à chaque fois ...

Reply

Marsh Posté le 13-12-2002 à 10:57:48    

batseb2000 a écrit :

Bha voila comment je voit les choses :

Code :
  1. public static int[] toIntArray(IntList list){
  2.     int i = 0;
  3.     int[] table;
  4.     while(!list.isEmpty()){
  5.       table = new int[i+1]; 
  6.       table[i] = list.first();
  7.       i++;
  8.       list = list.rest();
  9.     }
  10.     return table;
  11.   }


mais c po ca: )


 
c'est quoi ce truc? [:totoz]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 13-12-2002 à 11:14:15    

[:xrated] je veux pas voir ca  :)

Reply

Marsh Posté le 13-12-2002 à 11:21:43    

IntList ???
Kezako ???
Meme mon javadoc y connait pas... je suppose que c'est une classe a vous ?
Comment veux tu qu'on t'aide si on connait pas cette classe...


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 13-12-2002 à 11:23:39    

et si tu créais un tableau de la même taille que ta liste _avant_ de boucler pour le remplir ?
 
note: j'ai vérifié dans la doc si IntList existait... :ange: suis pas encore réveillé moâ... :pfff:


---------------
As the plane took off, the pilot turned to the co-pilot and said, “Have you ever flown solo?” Co-pilot: No. Typically I fly much higher than this.
Reply

Marsh Posté le 13-12-2002 à 11:26:26    

je viens de relire son code [:totoz]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 13-12-2002 à 11:28:51    

'tain c'est bon, arrêtez de vous acharner, on croirait que vous avez toujours tout maîtrisé en Java. Perso, j'me souviens du temps où j'avais du mal à faire des try/catch et où je me mélangeais les pinceaux avec les déclarations de variables à l'intérieur de blocs. IntList, si on est un peu futé, on imagine que c'est une classe qui implémente List ou un truc du style.
 
Bref dans tous les cas, batseb :
* comme le dit benou, c'est pas en demandant le code direct que tu vas apprendre ;
* idem, pour l'algorithme, il est pas bon de base. Réfère-toi au lien penserenjava de benou qui t'aidera à mieux structurer tes pensées. La POO, quand on débute, c'est pas forcément super intuitif. Mais t'inquiète, ça le devient par la suite ;)


Message édité par Taiche le 13-12-2002 à 11:29:26

---------------
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 13-12-2002 à 11:28:51   

Reply

Marsh Posté le 13-12-2002 à 11:29:49    

DarkLord a écrit :

je viens de relire son code [:totoz]


j'avais meme po vu le

Code :
  1. table = new int[i+1]; 
  2. table[i] = list.first();


 
spa gagné !!!


Message édité par e_esprit le 13-12-2002 à 11:30:40

---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 13-12-2002 à 11:34:26    

Non, mais là, le code qu'il à pondu, il suffit pas de pas connaitre Java pour le faire. 'faut être bête, tout simplement!

Reply

Marsh Posté le 13-12-2002 à 11:55:01    

Correction :

Code :
  1. public static int[] toIntArray(IntList list){
  2.     int i = 0;
  3.     int[] table;
  4.     while(!list.isEmpty()){
  5.       int [] table2 = new int[i+1];
  6.       for (int j=0; j < i; j++)
  7.           table2[j] = table[j];
  8.       table2[i] = list.first();
  9.       table = table2;
  10.       i++;
  11.       list = list.rest();
  12.     }
  13.     return table;
  14.   }


La ca marche... mais alors c'est le plus horrible bout de code que tu puisses faire :lol:
Concours du pire code pour le faire ???


Message édité par e_esprit le 13-12-2002 à 11:55:42

---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 13-12-2002 à 11:59:04    

e_esprit a écrit :


La ca marche... mais alors c'est le plus horrible bout de code que tu puisses faire :lol:
Concours du pire code pour le faire ???


 
[:xp1700] Tu vas vachement l'aider, c'est génial. T'es super fort, t'as bien enfoncé le newbie, total respect.


---------------
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 13-12-2002 à 12:04:45    

:lol:

Reply

Marsh Posté le 13-12-2002 à 12:04:50    

[:ddt]

Reply

Marsh Posté le 13-12-2002 à 12:06:10    

Bah comme je l'ai dit plus haut, si on connait pas la classe IntList et ses methodes, je vois pas comment on peut l'aider...
C'est pas une sous classe de List, enfin je pense pas pisque first() et rest() connait pas.
 
Alors moi je donne une solution. Et ce code marche ! je pense pas qu'en premiere annee de deug ils s'attendent a ce que les eleves leur pondent du code objet optimal ! (meme en Maitrise ils s'en battent, alors...).
 
Maintenant, si il detaille IntList, je me ferais un plaisir de l'aider...


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 13-12-2002 à 12:14:36    

Taiche a écrit :

'tain c'est bon, arrêtez de vous acharner, on croirait que vous avez toujours tout maîtrisé en Java. Perso, j'me souviens du temps où j'avais du mal à faire des try/catch et où je me mélangeais les pinceaux avec les déclarations de variables à l'intérieur de blocs. IntList, si on est un peu futé, on imagine que c'est une classe qui implémente List ou un truc du style.
 
Bref dans tous les cas, batseb :
* comme le dit benou, c'est pas en demandant le code direct que tu vas apprendre ;
* idem, pour l'algorithme, il est pas bon de base. Réfère-toi au lien penserenjava de benou qui t'aidera à mieux structurer tes pensées. La POO, quand on débute, c'est pas forcément super intuitif. Mais t'inquiète, ça le devient par la suite ;)

+1 [:xp1700]


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 13-12-2002 à 12:15:45    

El_Gringo a écrit :

Non, mais là, le code qu'il à pondu, il suffit pas de pas connaitre Java pour le faire. 'faut être bête, tout simplement!

:pfff:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 13-12-2002 à 13:04:23    

El_Gringo a écrit :

Non, mais là, le code qu'il à pondu, il suffit pas de pas connaitre Java pour le faire. 'faut être bête, tout simplement!


il est en première année de deug. C'est surement la première fois qu'il fait de la prog !

Reply

Marsh Posté le 13-12-2002 à 13:23:52    

commencer la prog par de l'OO...  :heink:


---------------
As the plane took off, the pilot turned to the co-pilot and said, “Have you ever flown solo?” Co-pilot: No. Typically I fly much higher than this.
Reply

Marsh Posté le 13-12-2002 à 13:25:54    

bha pkoi pas ?

Reply

Marsh Posté le 13-12-2002 à 13:48:51    

bah il me semble que c'est plus simple d'apprendre à programmer avec du Pascal ou du C pour avoir la base (variable, vecteurs, fonctions, passages par valeur/référence, construction de boucles, ...) avant de faire joujou avec des objets qui rendent des services.
 
enfin, c'est juste mon avis... j'suis content d'avoir passé qques temps en prog "classique" avant d'avoir abordé Java. (histoire de séparer logique et implémentation (OO ou non))
 
edit: j'dis pas que c'est impossible de commencer par de l'oo, disons que ça me paraît moins simple. -> avantage de commencer par un language OO, on connait déjà le language lorsque que l'on apprend vraiment l'OO.


Message édité par TBone le 13-12-2002 à 13:51:52

---------------
As the plane took off, the pilot turned to the co-pilot and said, “Have you ever flown solo?” Co-pilot: No. Typically I fly much higher than this.
Reply

Marsh Posté le 13-12-2002 à 14:17:54    

déjà, l'objet IntList doit disposer d'une méthode size() ou autre (je suppose) permettant d'initialiser un int[] de la taille voulue. Je commencerais par ça.


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

Marsh Posté le 13-12-2002 à 22:43:35    

Bha merci a ceux ki m'on defendu .... !!!! en particulier taiche ! ET VOILA MON RESULTAT ! :  

Code :
  1. public static void exo8() {
  2.     Random bag = new Random();
  3.     IntList list = new IntList(10, 20, bag);
  4.     System.out.println("La liste : "+list);
  5.     System.out.println("Le tableau : "+IntArray.toString(toIntArray(list)));
  6.   }
  7.  
  8.   public static int[] toIntArray (IntList list) { 
  9.     int listlength = 0;
  10.     IntList tlist = list;
  11.     while(!tlist.isEmpty()) {
  12.       tlist = tlist.rest();
  13.       listlength++;
  14.     }
  15.     int [] result = new int[listlength] ;
  16.    
  17.     int i = 0 ;   
  18.     while(!list.isEmpty()) {     
  19.       result[i] = list.first();
  20.       list = list.rest() ;
  21.       i++;
  22.     } 
  23.     return result;
  24.   }


et effectivemetn IntList regroupe un tas de truc pour les listes ... c un truc de la fac !
encore merci a ce ki m'ont defendu !!!  
et pour les autres ::::> LES PLUS GRANDS CHENES ETAIENT A LA BASE DES GLANDS !!!!!!!!
 
@


Message édité par batseb2000 le 13-12-2002 à 22:44:22

---------------
Don't Worry... Mais Surtout... Be Happy ! lol
Reply

Marsh Posté le 13-12-2002 à 22:50:16    

batseb2000 a écrit :


::::> LES PLUS GRANDS CHENES ETAIENT A LA BASE DES GLANDS !!!!!!!!

[:rofl][:rofl][:rofl][:rofl]
[:xp1700] je la ressortirai! :D


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 14-12-2002 à 02:46:32    

batseb2000 a écrit :

Bha merci a ceux ki m'on defendu .... !!!! en particulier taiche !

Quel gros fayot, ce Taiche !

Reply

Marsh Posté le 14-12-2002 à 16:58:47    

batseb2000 a écrit :

Bha merci a ceux ki m'on defendu .... !!!! en particulier taiche ! ET VOILA MON RESULTAT ! :  
[...]
et pour les autres ::::> LES PLUS GRANDS CHENES ETAIENT A LA BASE DES GLANDS !!!!!!!!


 
Huhu [:yes papa !!!]
Bon ba de rien, hein. Effectivement, ton algo a l'air un brin meilleur même si on ne sait pas trop en quoi consiste l'IntList, on se doute de ce que ça fait :)
A++

Reply

Marsh Posté le 14-12-2002 à 16:59:03    

Cherrytree a écrit :

Quel gros fayot, ce Taiche !


 
 [:tapai]

Reply

Marsh Posté le 15-12-2002 à 00:35:34    

Si si, c'est l'autre qui l'a dit. :D


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

Marsh Posté le 16-12-2002 à 09:48:14    

--greg-- a écrit :

[:rofl][:rofl][:rofl][:rofl]
[:xp1700] je la ressortirai! :D


La citation originale, c'est : "Si ton labeur est dur et que tes résultats sont minces, n'oublie pas que le grand chêne a lui aussi été un gland comme toi".  :D

Reply

Marsh Posté le 16-12-2002 à 10:31:04    

BifaceMcLeOD a écrit :


La citation originale, c'est : "Si ton labeur est dur et que tes résultats sont minces, n'oublie pas que le grand chêne a lui aussi été un gland comme toi".  :D  

de?


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 16-12-2002 à 12:14:59    

De ceci :
 

batseb2000 a écrit :


::::> LES PLUS GRANDS CHENES ETAIENT A LA BASE DES GLANDS !!!!!!!!

Reply

Marsh Posté le 16-12-2002 à 12:30:15    


 
je crois que --greg-- veut savoir de qui est *ta* citation


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 16-12-2002 à 12:31:10    

de QUI, je voulais dire  :sarcastic:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 16-12-2002 à 14:02:36    

Sorry :D
 
A ma connaissance... d'un illustre inconnu.   :o :ange:
 
C'est du même acabit que "Heureux l'étudiant qui comme la rivière suit son cours sans quitter son lit" : une phrase d'étudiant à lire dans les toilettes de bâtiments d'universités. Je ne suis pas sûr qu'il y ait un véritable auteur derrière (mais après tout, ce n'est pas impossible).


Message édité par BifaceMcLeOD le 16-12-2002 à 14:05:09
Reply

Marsh Posté le 16-12-2002 à 14:14:45    

BifaceMcLeOD a écrit :

Sorry :D
 
A ma connaissance... d'un illustre inconnu.   :o :ange:
 
C'est du même acabit que "Heureux l'étudiant qui comme la rivière suit son cours sans quitter son lit" : une phrase d'étudiant à lire dans les toilettes de bâtiments d'universités. Je ne suis pas sûr qu'il y ait un véritable auteur derrière (mais après tout, ce n'est pas impossible).


 
pour le truc d'étudiant il y a un auteur mais je ne m'en souviens pas


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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