Java limiter les nombre après la virgule
muntu
-
abrouch -
abrouch -
Bonjour,
SVP, je suis débutant en java, est ce que quelqu'un peut bien m'expliquer ce fait cette instrution %.10e ? au fait je sais que je fixe le 10 chiffres après la virgule, mais je comprend pas pourquoi il faut mettre le e après 10 ? et le % veut signifier quoi ? et qd j'essais d'utiliser la fonction df(format) il n'affiche pas le resultat.
SVP, je suis débutant en java, est ce que quelqu'un peut bien m'expliquer ce fait cette instrution %.10e ? au fait je sais que je fixe le 10 chiffres après la virgule, mais je comprend pas pourquoi il faut mettre le e après 10 ? et le % veut signifier quoi ? et qd j'essais d'utiliser la fonction df(format) il n'affiche pas le resultat.
A voir également:
- Java arrondir 2 chiffres après virgule
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Supercopier 2 - Télécharger - Gestion de fichiers
- Waptrick java voiture - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
3 réponses
Salut,
Ce serait bien si tu nous montrais ton code (la partie qui ne fonctionne pas) ce serait bien.
Mais en attendant tu peux tester ce code:
Cordialement,
Dan
Ce serait bien si tu nous montrais ton code (la partie qui ne fonctionne pas) ce serait bien.
Mais en attendant tu peux tester ce code:
// avec arrondi d'un nombre à 10 décimales:
System.out.println("\nVERSION AVEC ARRONDI:");
//double dNombre = 0.45657;
double dNombre = 0.4567890123;
System.out.println("Le nombre (double) avant arrondi: " + dNombre);
String masque = new String("#0.##"); // le point est obligatoire (#0.##)
DecimalFormat form = new DecimalFormat(masque); // import java.text.DecimalFormat;
System.out.println("dNombre arrondi: " + form.format(dNombre));
// sans arrondi de ce nombre:
System.out.println("\nVERSION SANS ARRONDI (troncature):");
String sNombre = Double.toString(dNombre);
System.out.println("sNombre: " + sNombre);
int index = sNombre.indexOf(".");
if (index != -1)
{
String sNombreTronque = sNombre.substring(0, index +3);
System.out.println("sNombreTronque: " + sNombreTronque + " (String)");
double result = Double.parseDouble(sNombreTronque);
System.out.println("Resultat: " + result +" (double)");
}
else
System.out.println("Pas de .");
// ne pas oublier de gerer les exceptions
Cordialement,
Dan
abrouch
Merci bien votre code m'a bien servit...
Merci,
mais mon code c'est :
import java.math.*;
public class Trapeze {
static double f(double x)
{
return Math.sqrt(x);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i,n;
double s,t=0,x;
double a,b,h;
Scanner sc = new Scanner(System.in);
System.out.println(" Entrer la valeur de borne inferieure SVP !");
a = sc.nextDouble();
System.out.println("Entrer la valeur de borne superieure SVP !");
b = sc.nextDouble();
while(a>b){
System.out.println("la borne inferieure ne peut pas être superieure à la borne superieure !");
System.out.println("Entrer la valeur de borne inferieure SVP !");
a = sc.nextDouble();
System.out.println("Entrer la valeur de borne superieure SVP !");
b = sc.nextDouble();
}
n=10; /* Nombre d'itération */
h=(b-a)/n;
s=f(a)+f(b);
for (i=0;i<=n-1;i++)
{
x=a+i*h;
s=s+2*f(x);
t=s*h/2;
}
System.out.printf("Intégrale f(x)dx entre [a,b] est = %.5e",t);
}
} et qd j fais c k tu me dis il n'affiche rien par contre ici, il affiche le resultat. Mais j'aimerai bien comprendre alors cette instruction %.5e, son rôle c'est quoi ?
mais mon code c'est :
import java.math.*;
public class Trapeze {
static double f(double x)
{
return Math.sqrt(x);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int i,n;
double s,t=0,x;
double a,b,h;
Scanner sc = new Scanner(System.in);
System.out.println(" Entrer la valeur de borne inferieure SVP !");
a = sc.nextDouble();
System.out.println("Entrer la valeur de borne superieure SVP !");
b = sc.nextDouble();
while(a>b){
System.out.println("la borne inferieure ne peut pas être superieure à la borne superieure !");
System.out.println("Entrer la valeur de borne inferieure SVP !");
a = sc.nextDouble();
System.out.println("Entrer la valeur de borne superieure SVP !");
b = sc.nextDouble();
}
n=10; /* Nombre d'itération */
h=(b-a)/n;
s=f(a)+f(b);
for (i=0;i<=n-1;i++)
{
x=a+i*h;
s=s+2*f(x);
t=s*h/2;
}
System.out.printf("Intégrale f(x)dx entre [a,b] est = %.5e",t);
}
} et qd j fais c k tu me dis il n'affiche rien par contre ici, il affiche le resultat. Mais j'aimerai bien comprendre alors cette instruction %.5e, son rôle c'est quoi ?
Je te conseille de consulter la classe Math de la javaDoc:
https://docs.oracle.com/javase/6/docs/api/ et cliquer sur Math dans la fenêtre All Classes
et peut-être aussi
https://fr.wikipedia.org/wiki/Calcul_int%C3%A9gral
Ou tout simplement avec Google de rechercher >>>> calcul integral en java
Concernant la demande correspondant au titre de ton message, il suffit (peut-être) que tu ajoutes dérrière
ces quelques lignes:
Cordialement,
Dan
https://docs.oracle.com/javase/6/docs/api/ et cliquer sur Math dans la fenêtre All Classes
et peut-être aussi
https://fr.wikipedia.org/wiki/Calcul_int%C3%A9gral
Ou tout simplement avec Google de rechercher >>>> calcul integral en java
Concernant la demande correspondant au titre de ton message, il suffit (peut-être) que tu ajoutes dérrière
System.out.printf("Intégrale f(x)dx entre [a,b] est = %.5e",t);
ces quelques lignes:
System.out.println("\n\nVERSION AVEC ARRONDI:");
double dNombre = t;
System.out.println("Le nombre (double) avant arrondi: " + dNombre);
String masque = new String("#0.##");
DecimalFormat form = new DecimalFormat(masque); // import java.text.DecimalFormat;
System.out.println("dNombre arrondi: " + form.format(dNombre));
Cordialement,
Dan