Estaba creando un programa que me transformase los grados Celsius/Centígrados a Fahrenheit y viceversa. Al pasar de Cº a Fº la formula sería:
Fº = Cº * (9/5) + 32
Pero me dí cuenta que por ejemplo 35ºC son 95ºF (visto en Google) mientras que en mi programa da 67ºF.
Esto quiere decir que en mi programa solo se sumaron los 32 de la formula pero no multiplicó los 9/5 por los Celsius. No entiendo por qué así que les dejo el código:
Código:
package Experimentillos;
import java.util.Scanner;
public class FahrenheitCelsius {
static double Cº_Fº(double num){
num = num*(9/5)+32;
return num;
}
static double Fº_Cº(double num){
num = (num-32)*(5/9);
return num;
}
public static void main(String[] args){
Scanner S = new Scanner(System.in);
int op;
double celsius, fahren;
do{
System.out.println("Elija una opción: ");
System.out.println("1. Cº => Fº");
System.out.println("2. Fº => Cº");
System.out.println("3. Salir");
op = S.nextInt();
}while(op > 3 || op < 1);
switch(op){
case 1:
System.out.println("¿Cuántos Cº?");
celsius = S.nextInt();
fahren = Cº_Fº(celsius);
System.out.println(celsius+" Cº son "+fahren+" Fº.");
break;
case 2:
System.out.println("¿Cuántos Fº?");
fahren = S.nextInt();
celsius = Fº_Cº(fahren);
System.out.println(fahren+" Fº son "+celsius+" Cº.");
break;
case 3:
}
}
}
Gracias de antemano. Saludos!!!