I'm just starting out using Java. And I came across this issue :
This is my code :
import java.util.Scanner;
public class FormatageValeurNumerique {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Entrez une valeur reelle :");
Scanner in = new Scanner(System.in);
float x = in.nextFloat();
// System.out.printf("La valeur reelle est, apres formatage : %.5+,f", x);
// Gives exception ? Why ?
// System.out.printf("La valeur reelle est, apres formatage : %+.5,f", x);
// Gives exception ? Why ?
System.out.printf("La valeur reelle est, apres formatage : %+,.5f", x);
}
}
Outputs :
Entrez une valeur reelle : 315136.23 La valeur reelle est, apres formatage : +315,136.21875
And this is what is expected :
Formatage de valeurs numériques
Écrivez un programme qui demande à l’usager une valeur réelle et qui l’affiche à l’écran en s’assurant d’avoir au moins 5 chiffres après la virgule, en forçant l’apparition du signe et en incluant le groupement de chiffres.
L’affichage obtenu doit être semblable au suivant:
Entrez une valeur réelle : 315136.23 La valeur réelle est, après formatage : +315,136.23000
The numbers do not match... any ideas why ?
Also if someone can explain why I'm getting exceptions depending on how I write out the flags ? Is there a priority to respect ?