import java.util.StringTokenizer; public class EcritDouble { static String tronque(String chaine, int nbDecimales) { String avant; String apres; StringTokenizer st = new StringTokenizer(chaine,"."); avant = st.nextToken(); if (st.hasMoreTokens()) apres = st.nextToken(); else return avant; if (apres.length() <= nbDecimales) return chaine; return chaine.substring(0, chaine.length() - apres.length() + nbDecimales); } public static void main(String[] arg) { if (arg.length != 2) { System.out.println("Il faut deux parametres"); System.exit(0); } try { int nbDecimales = Integer.parseInt(arg[1]); if (nbDecimales < 0) throw new NumberFormatException(); System.out.println(tronque(arg[0], nbDecimales)); } catch(NumberFormatException exc) { System.out.println("erreur d'ecriture ; le premier parametre " + "doit etre un double et le second parametre " + "un entier positif ou nul"); } } }