Avoir 6 decimales java

Résolu/Fermé
max3811 Messages postés 117 Date d'inscription lundi 17 août 2009 Statut Membre Dernière intervention 17 juillet 2016 - 12 avril 2011 à 23:47
max3811 Messages postés 117 Date d'inscription lundi 17 août 2009 Statut Membre Dernière intervention 17 juillet 2016 - 24 avril 2011 à 19:34
Bonjour,
je souhaiterais avoir 6 decimales

voila une partie de mon code

import javax.swing.*;
class essai1
{
public static void main(String args[])

{
String ae,be,ne,he,message;
int a,b,h,w,n;



//je demande a l utilisateur d entrer une borne a entre 0 et 10
do
{ae = JOptionPane.showInputDialog("entrez la borne a comprise entre 0 et 10");
a = Integer.parseInt(ae);
}
while( a<0 ||a>10 );


// je demande a l utilisateur d entrer une borne b entre a et 10
do
{be = JOptionPane.showInputDialog("entrez la borne b comprise entre a et 10");
b = Integer.parseInt(be);
}
while( b<a ||b>10 );


// je demande a l utilisateur d entrer un intervalle >0
do
{ne = JOptionPane.showInputDialog("entrez le pas >0");
n = Integer.parseInt(ne);
}
while( n<=0);


// c est pour h et w que je voudrais avoir 6 decimales

h=(b-a)/n;
w=h/3;


en espérant que vous puissiez m aider


A voir également:

6 réponses

malaik5 Messages postés 258 Date d'inscription vendredi 20 novembre 2009 Statut Membre Dernière intervention 28 novembre 2013 33
13 avril 2011 à 10:04
bonjour,
Deja tu veux que l'utilisateur donne ces 6chiffres ou bien c'est à toi de les generer ??

* si à toi de le generer oriente toi vers des random !!
* pour l'es conditions du while !!

et je me pose d'autres questions, du coup veux tu stp donner lus de details sur ce que tu veux faire !!!!!!
en plus t'as parlé de 6, je ne vois que 5 décimaux
0
Utilisateur anonyme
13 avril 2011 à 11:07
Salut,

Tu ne peux avoir un chiffre avec 6 décimales pour h et w qui sont des entiers int.

Pour avoir des nombres réels utilise les types double ou float...

Cordialement,

Dan
0
max3811 Messages postés 117 Date d'inscription lundi 17 août 2009 Statut Membre Dernière intervention 17 juillet 2016 12
13 avril 2011 à 14:14
bojour,
en fait je demande a un utilisateur d entrer

[la borne a , la borne b , le nombre d interval n ] en chiffre entier

avec la condition que a doit etre entre 0 et 10
b entre a et10
n >0
et si c est pas le cas redemander a l utilisateur de mettre un nouveau nombre entier

en suite j utilise les formules
h=(b-a)/n
w=h/3
où il me faudrait 6 décimales
(je réutilise w dans un calcul (w*[exp(-a)*a^2+exp(-b)*b^2]) et sans les 6 décimales j obtiens toujours 0 (ou presque) comme réponce

a la fin je genere une boite de message avec les differentes valeurs entrées et la reponce du calcul avec
JOptionPane.showMessageDialog(
null,
message,
"réponce",
JOptionPane.INFORMATION_MESSAGE
);
System.exit(0);

j ai deja essayé plusieurs methodes mais pas correctement car elles ne fonctionnent pas

en esperant avoir ete clair

(PS: je debute)
0
max3811 Messages postés 117 Date d'inscription lundi 17 août 2009 Statut Membre Dernière intervention 17 juillet 2016 12
Modifié par max3811 le 13/04/2011 à 22:53
ok merci danimo je vais essayer
ca fonctione merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
14 avril 2011 à 06:05
Re,

Tu ne dis pas si tu as tes 6 décimales...

En cas de besoin voici une méthode pour le faire:

public static double floor(double d, int decim)
      {
         double p = Math.pow(10.0, decim);
         return Math.floor((d*p)+0.5) / p;
      }


Et son utilisation:

int nbDec = 6;
double resultat = floor(w, nbDec); 
System.out.println("\nRésultat arrondi avec " + nbDec + " décimales si nécessaire" + resultat);


Un lien très utile:

https://java.developpez.com/faq/java?page=Chaines-de-caracteres

Choisir la ligne "Comment arrondir un nombre ?"

Cordialement,
0
max3811 Messages postés 117 Date d'inscription lundi 17 août 2009 Statut Membre Dernière intervention 17 juillet 2016 12
24 avril 2011 à 19:34
merci mais j avais trouve par une autre methode
merci pour le lien
0