oi pessoal, estou tentando fazer um conversor que pergunta ao usuario o valor a ser convertido e as unidades (tipos) que eles deseja (Celsius, Farhenhait ou Kelvin) mas só retorna 0.
alem do mais, os do…while nao estão funcionando como deveriam.
olhem o codigo e por favor deem-me uma solução…
valeeeeu!
import java.util.*;
class Conversor
{
Scanner sc = new Scanner (System.in);
double valorPassado;
double resultado = 0;
String de, para, repete;
String perguntas()
{
System.out.println ("Digite o valorPassado que deseja converter: "); //pergunta ao usuário o valorPassado que deseja converter
valorPassado = sc.nextDouble();
//perguntar enquanto a resposta não for c ou f ou k
do
{
System.out.println ("Digite o tipo desse valorPassado (c,f,k)"); //pergunta o tipo inicial do valorPassado
de=sc.next();
}
while ((de != "c") || (de != "f") || (de!= "k"));
//perguntar enquanto a resposta não for c ou f ou k
do
{
System.out.println ("Digite para que tipo deseja converter (c,f,k)"); //pergunta o tipo final do valorPassado
para = sc.next();
}
while ((para!= "c") || (para!= "f") || (para!= "k"));
return "";
}
double resultado()
{
//calcula até o usuário digitar n ou N
do
{
if( perguntas() == “c”)
{
if ( para == “f”)
{
resultado = ((valorPassado * 1.8) + 32);
}
else if ( para == “k”)
{
resultado = ((valorPassado) + 273);
}
else
{
resultado = (valorPassado);
}
}
else if ( de == "f")
{
if (para == "c")
{
resultado = (((valorPassado) - 32) / 1.8);
}
else if ( para == "k")
{
resultado = (((valorPassado) + 459.67) / 1.8);
}
else
{
resultado = valorPassado;
}
}
else if (de == "k")
{
if (para == "c")
{
resultado = ((valorPassado) - 273);
}
else if ( para == "f")
{
resultado = (((valorPassado) * 1.8) - 459.67);
}
else
{
resultado = (valorPassado);
}
}
System.out.println (resultado);
System.out.println ("Deseja fazer outra conversão?(s/n)");
repete=sc.next();
}
while (repete.toLowerCase().equals("s"));
return -1;
}
public static void main (String [] args)
{
Conversor c = new Conversor ();
System.out.println(c.perguntas());
System.out.println(c.resultado());
}
}