pointeur sur un tableau ? est-ce faisable ?

pointeur sur un tableau ? est-ce faisable ? - Java - Programmation

Marsh Posté le 15-11-2008 à 13:00:53    

Bonjour !
J'ai une petite question en Java:
 
j'ai :

Code :
  1. class Polynome
  2.         {
  3.          Monome monomes[] = new Monome[n];
  4.           ....
  5.          }


 
où Monome est une classe définie
 
lors de méthodes du genre addition,multiplication ... j'ai besoin d'un nouveau tableau "resultat" car la taille change ..
 
Je voudrais que le tableau monomes pointe sur la tableau resultat .... est-ce faisable ?
 
Merci !  :)  

Reply

Marsh Posté le 15-11-2008 à 13:00:53   

Reply

Marsh Posté le 16-11-2008 à 12:01:36    

Retourne une nouvelle instance d'une classe, les noms de classes c'est un peu comme des pointeurs mais plus adapté.

Reply

Marsh Posté le 16-11-2008 à 16:00:16    

Ouais mais le pb c'est que mes méthodes doivent être des "void" ..

Reply

Marsh Posté le 16-11-2008 à 16:03:17    

J'ai même pas compris la question perso

pooky13 a écrit :

Ouais mais le pb c'est que mes méthodes doivent être des "void" ..


Ou ça d'ailleurs, quel est l'intérêt d'une horreur pareille?


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 16-11-2008 à 18:53:29    

masklinn a écrit :

J'ai même pas compris la question perso


 

masklinn a écrit :


Ou ça d'ailleurs, quel est l'intérêt d'une horreur pareille?


 
Il essaie d'implémenter tous les trucs chiants de C en Java.. Là j'ai l'impression qu'il veut passer par référence une variable "reponse" à ses méthodes pour qu'elles écrivent dedans, histoire de pas devoir faire d'allocation dynamique dans la fonction. Enfin je suis novice en C mais j'ai l'impression qu'il cherche à coder qqch du genre .. À part être totalement débile vu qu'en java tout ces problèmes existent pas, je vois pas trop à quoi ça pourrait éventuellement servir :heink:


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 17-11-2008 à 09:38:49    

Oui c'est faisable.
 

Code :
  1. class Polynome
  2. {
  3.   Monome monomes[] = new Monome[n];
  4.   ....
  5.   public void add(<parametres> ) {
  6.     ...
  7.     Monome resultat[] = new Monome[nouvelleTaille];
  8.     ... // ici on met tout ce qu'il faut dans resultat
  9.     this.monomes = resultat; // ici on met à jour l'attribut monomes
  10.   }
  11. }

Reply

Marsh Posté le 18-11-2008 à 18:15:27    

Merci bidem mais lorsque j'écris :
  this.monomes=resultat;
 
le compilateur me dit : "resultat cannot be resolved"

Reply

Marsh Posté le 18-11-2008 à 19:56:16    

Colle ici ton code ..


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 18-11-2008 à 20:31:30    

voilà mon code ... enfin la classe Polynôme
 

Code :
  1. public class Polynome {
  2.  int degre_pol;
  3.  Monome monomes [];
  4.   Polynome (float coeff, int degre)
  5.    {
  6.     monomes = new Monome [degre+1];
  7.                           int i;
  8.  for(i=0;i<=degre; i++)
  9.    {
  10.     monomes[i]=new Monome(0,i);
  11.   
  12.    }
  13.  System.out.println(i);
  14.        monomes[degre].setCoeff(coeff);
  15.     monomes[degre].setDegre(degre);
  16.     degre_pol=degre;
  17.   
  18.  }
  19.  
  20. void additionne (float coeff,int degre)
  21.  {
  22.   if(degre_pol>degre)
  23.   {
  24.   Monome resultat [] = new Monome[degre_pol];
  25.    int i=0;
  26.    while(i<resultat.length)
  27.    {
  28.     if(monomes[i].getCoeff()!=0)
  29.     {
  30.      resultat[i]=new Monome(monomes[i].getCoeff(),monomes[i].getDegre());
  31.     }
  32.     else
  33.     {
  34.      resultat[i]=new Monome(0,i);
  35.     }
  36.    i++;
  37.    }
  38.    resultat[degre].additionne(coeff);
  39.   }
  40.  this.monomes=resultat;
  41.  }


 
Merci d'avance :)


Message édité par pooky13 le 18-11-2008 à 20:33:42
Reply

Marsh Posté le 18-11-2008 à 20:59:19    

Facile. Tu definis resultat dans le if(degre_pol > ..) mais tu l'utilises aussi en dehors


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 18-11-2008 à 20:59:19   

Reply

Marsh Posté le 18-11-2008 à 21:25:46    

oups ! ;) merci bcp! quelle erreur idiote!

Reply

Sujets relatifs:

Leave a Replay

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