Java , Comment faire pour que 12.44 tomberait à 12 et un 12.45 passerait à 13.
silencedev
Messages postés2Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention10 février 2009
-
9 févr. 2009 à 17:09
silencedev
Messages postés2Date d'inscriptionlundi 9 février 2009StatutMembreDernière intervention10 février 2009
-
10 févr. 2009 à 11:33
je veux un traitement pour changer les valeurs
si la valeur après la virgule <= 44 exp : ( 1,<=44)-----> 1.0
si la valeur après la virgule >= 45 exp : ( 1,>=45)-----> 2.0
autre exemple :
183.457 passerait à 184
7.44 passerait à 7
17.45 passerait à 18
merci d'avance.
A voir également:
Java , Comment faire pour que 12.44 tomberait à 12 et un 12.45 passerait à 13.
Je suppose qu'aulieu de:
autre exemple :
183.457 passerait à 184
7.44 passerait à 7
17.45 passerait à 18
tu voulais dire:
autre exemple :
183.457 passerait à 184.0
7.44 passerait à 7.0
17.45 passerait à 18.0
La solution:
/*float aF = 183.457f; // ou 1.44f, 1.45f, 7.44f, 17.45f etc..
long bL (long)Math.round(aF + .050f); // si plus de decimales ajouter autant de 0 que de decim. supplémentaires a .050faF bL;
System.out.println("aF = " + aF); */
// Controle avec tes exemples
float aF = 0f;
for (int i = 0; i < 5; i++)
{
switch(i)
{
case 0:
aF = 1.44f;
break;
case 1:
aF = 1.45f;
break;
case 2:
aF = 183.457f;
break;
case 3:
aF = 7.44f;
break;
case 4:
aF = 17.45f;
break;
}
long bL = (long)Math.round(aF + .050f);
aF = bL;
System.out.println("af = " + aF);
}