Problème de classe en Java....pitié ^^
Résolu/Fermé
A voir également:
- Problème de classe en Java....pitié ^^
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Java décompiler - Télécharger - Langages
- Java runtime - Télécharger - Langages
5 réponses
Utilisateur anonyme
15 mars 2009 à 20:12
15 mars 2009 à 20:12
Bonjour,
Pour:
Complexe c = new Complexe(3.5,4); écrire Complexe c = new Complexe(3.5f,4); (3.5f ou 3.5F)
Sinon 3.5 est double par défaut.
Pour le reste je vais regarder.
A++
Cordialement,
Dan
Pour:
Complexe c = new Complexe(3.5,4); écrire Complexe c = new Complexe(3.5f,4); (3.5f ou 3.5F)
Sinon 3.5 est double par défaut.
Pour le reste je vais regarder.
A++
Cordialement,
Dan
Salut,
Pourquoi pas, mais (oui il y a quand même un mais que ce soit un double ou un float...) :
Prenon le cas float, si l'on fait par exemple
Complexe c3 = new Complexe(29999991234,2f); sans décimales donc
java considère qu'il doit reserver en mémoire un emplacement pour un integer.
Le mais: c'est que 29999991234 dépace la longueur maxi d'un int et nous avons ce message "integer number too large: 29999991234" lors de la compilation. (ce serait pareil avec un long par exemple et bien entendu un double)
La conclusion est qu'il vaut mieux ajouter le f, ou le d, voir le l
Dan
Pourquoi pas, mais (oui il y a quand même un mais que ce soit un double ou un float...) :
Prenon le cas float, si l'on fait par exemple
Complexe c3 = new Complexe(29999991234,2f); sans décimales donc
java considère qu'il doit reserver en mémoire un emplacement pour un integer.
Le mais: c'est que 29999991234 dépace la longueur maxi d'un int et nous avons ce message "integer number too large: 29999991234" lors de la compilation. (ce serait pareil avec un long par exemple et bien entendu un double)
La conclusion est qu'il vaut mieux ajouter le f, ou le d, voir le l
Dan
Utilisateur anonyme
16 mars 2009 à 08:30
16 mars 2009 à 08:30
Bonjour,
Bon, j'ai testé en ajoutant quelques traces (println), notamment dans les getReel et getImaginaire
public float getReel(){
System.out.println( "getReel>>>>>>>>>>>>> reel = " + reel);
return reel;
}
public float getImaginaire(){
System.out.println( "getimaginaire>>>>>>>>>>>>> imaginaire = " + imaginaire);
return imaginaire;
}
Et, comme on pouvait s'y attendre, tel que c'est écri, les résultats obtenus sont tout à fait correct .
J'aimerais savoir pourquoi on attend, par exemple pour c3, le résultat 52 + 86 (je ne parle pas des .0 car nous travaillons avec des float et nous pourions avoir des décimales autres que .0)
J'attend donc de savoir pourquoi on attend 86 pour modifier et obtenir ce résultat.
Cordialement,
Dan
Bon, j'ai testé en ajoutant quelques traces (println), notamment dans les getReel et getImaginaire
public float getReel(){
System.out.println( "getReel>>>>>>>>>>>>> reel = " + reel);
return reel;
}
public float getImaginaire(){
System.out.println( "getimaginaire>>>>>>>>>>>>> imaginaire = " + imaginaire);
return imaginaire;
}
Et, comme on pouvait s'y attendre, tel que c'est écri, les résultats obtenus sont tout à fait correct .
J'aimerais savoir pourquoi on attend, par exemple pour c3, le résultat 52 + 86 (je ne parle pas des .0 car nous travaillons avec des float et nous pourions avoir des décimales autres que .0)
J'attend donc de savoir pourquoi on attend 86 pour modifier et obtenir ce résultat.
Cordialement,
Dan
Utilisateur anonyme
17 mars 2009 à 08:01
17 mars 2009 à 08:01
Désolé pour mon retard ^^ mais j'ai pas internet chez moi donc je dois me taper le trajet jusqu'a l'université XD
Pour c3 on fait l'opération c3 * ctest = (20+2i) * (3+4i) = 52 + 86i
D'ou le résultat qu'on attend.
Enfin à moins que je ne me sois trompé dans la multiplication ??????? La honte......
Pour c3 on fait l'opération c3 * ctest = (20+2i) * (3+4i) = 52 + 86i
D'ou le résultat qu'on attend.
Enfin à moins que je ne me sois trompé dans la multiplication ??????? La honte......
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
17 mars 2009 à 12:10
17 mars 2009 à 12:10
Salut,
Bon j'ai vu pourquoi on a 214 et pas 86:
Avant le second calcul reel est à 52 (résultat du 1er calcul) et n'est plus à 20 la valeur initiale passée par Complexe c3 = new Complexe(20,2);
Si on ne veut pas tenir compte du 1er calcul
Pour faire le second calcul avec 20, il suffit de sauvegarder avant de faire le 1er calcul float reelSv = reel;
et réinitialiser avant le second reel = reelSv;
Soit:
public void multiComplexe(Complexe c){
float reelSv = reel;
reel = reel * c.getReel() - imaginaire * c.getImaginaire();
reel = reelSv;
imaginaire = reel * c.getImaginaire() + imaginaire * c.getReel();
Cordialement,
Dan
Bon j'ai vu pourquoi on a 214 et pas 86:
Avant le second calcul reel est à 52 (résultat du 1er calcul) et n'est plus à 20 la valeur initiale passée par Complexe c3 = new Complexe(20,2);
Si on ne veut pas tenir compte du 1er calcul
Pour faire le second calcul avec 20, il suffit de sauvegarder avant de faire le 1er calcul float reelSv = reel;
et réinitialiser avant le second reel = reelSv;
Soit:
public void multiComplexe(Complexe c){
float reelSv = reel;
reel = reel * c.getReel() - imaginaire * c.getImaginaire();
reel = reelSv;
imaginaire = reel * c.getImaginaire() + imaginaire * c.getReel();
Cordialement,
Dan
Mon sauveuuuuuuuuuuuuur ^^
Merci infiniment tu as toute ma gratitude, ma reconnaissance et tout et tout....;toi, t'iras au paradis c'est sur XD
En plus jamais j'aurais pensé à ça......merci merci merci tu me débloque là, j'arrivai plus a réfléchir sur la suite de mes exos tout en sachant que j'arrivai pas a faire fonctionner un "simple" (pas tant que sa :-) programme d'addition de complexes....
Merciiiiiiiiiiiiiiiiiiiii et topic résolu bien sur !
A bientot pour de nouvelles aventures ^^
Merci infiniment tu as toute ma gratitude, ma reconnaissance et tout et tout....;toi, t'iras au paradis c'est sur XD
En plus jamais j'aurais pensé à ça......merci merci merci tu me débloque là, j'arrivai plus a réfléchir sur la suite de mes exos tout en sachant que j'arrivai pas a faire fonctionner un "simple" (pas tant que sa :-) programme d'addition de complexes....
Merciiiiiiiiiiiiiiiiiiiii et topic résolu bien sur !
A bientot pour de nouvelles aventures ^^