Problème de calcul JAVA
Résolu
Endernite
Messages postés
96
Statut
Membre
-
Endernite Messages postés 96 Statut Membre -
Endernite Messages postés 96 Statut Membre -
Bonsoir,
au cours d'un exercice proposé par mon instructeur d'informatique, je devais réaliser un convertisseur Fahrenheit vers Celsius..
J'ai une erreur de calcul à la ligne 23 de ce code:
Quand je lui demande de changer les F° en C°, le résultat n'est pas correct (testé avec plusieurs valeurs : 50 -> 82 alors que c'est 50 -> 122)
Pouvez-vous s'il vous plait me dire ce qui ne va pas dans ma formule ?
Voici les formules utilisé F=9/5PC+32
C+(F-32)*5)/9
au cours d'un exercice proposé par mon instructeur d'informatique, je devais réaliser un convertisseur Fahrenheit vers Celsius..
J'ai une erreur de calcul à la ligne 23 de ce code:
public static void main(String[] args) { //TITRE System.out.print("#####################################\\n# CONVERTISSEUR DE TEMPERATURES #\\n# 25/07/2014 By Luca Saliola #\\n#####################################"); Scanner s = new Scanner (System.in) ; System.out.print("\\nVeuillez choisir un mode de conversion :"); System.out.print("\\n 1 - Fahrenheit - Celcius \\n 2 - Celcius - Fahrenheit\\n"); //Sélection byte inputselec = s.nextByte(); switch (inputselec) { case 1: System.out.print("Vous avez choisi de convertir de F° vers C°\\n"); System.out.println("Choisir une valeur (F°) à convertir :"); //Calcul de F -> C int inputnumbf = s.nextInt(); int celcius = ((inputnumbf - 32)/1)*(5/9); System.out.print(inputnumbf + "F° Equivalent à " + celcius + " degrès celcius"); break; case 2: System.out.print("Vous avez choisi de convertir de C° vers F°\\n"); System.out.println("Veuillez choisir une valeur (C°) à convertir"); //Calcul de C -> F int inputnumbc = s.nextInt(); int fahren = (9/5) * inputnumbc + 32; System.out.print(inputnumbc + "C° Equivalent à " + fahren + "degrés fahrenheit"); break; default: System.out.print("Veuillez indiquer des valeurs chiffrées correctes !"); } } }
Quand je lui demande de changer les F° en C°, le résultat n'est pas correct (testé avec plusieurs valeurs : 50 -> 82 alors que c'est 50 -> 122)
Pouvez-vous s'il vous plait me dire ce qui ne va pas dans ma formule ?
Voici les formules utilisé F=9/5PC+32
C+(F-32)*5)/9
A voir également:
- Problème de calcul JAVA
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
2 réponses
Bonjour,
9 et 5 sont des entiers, donc 9/5 est une division entière dont le résultat est 1.
Soit tu travailles avec des valeurs réelles (float ou double), soit il faut t'arranger pour que les divisions entières se passent bien, ici en calculant d'abord la multiplication :
9 et 5 sont des entiers, donc 9/5 est une division entière dont le résultat est 1.
Soit tu travailles avec des valeurs réelles (float ou double), soit il faut t'arranger pour que les divisions entières se passent bien, ici en calculant d'abord la multiplication :
int fahren = (9 * inputnumbc)/5 + 32;