Boa noite pessoal, pesquisei algumas dúvidas no fórum e acho que tá bem estruturado o exercício mas o “println” para exibir o resultado tá dando erro. Segue enunciado e exercício:
Crie um método que receba 2 números e retorne o maior valor.
import java.util.Scanner;
public class Ex04
{
float maiorValor(float num1, float num2)
{
if(num1 > num2)
return num1;
else
return num2;
}
public static void main(String[] args)
{
Scanner ler = new Scanner(System.in);
float num1, num2, maiorValor;
System.out.println("Digite o primeiro valor: ");
num1 = ler.nextInt();
System.out.println("Digite o segundo valor: ");
num2 = ler.nextInt();
> System.out.println("O maior valor é: " + maiorValor );
}
}
Obs: variáveis não usadas e no resultado a variável não foi inicializada
Boa noite amigo,
O erro se refere a varivel maiorValor
Ou como posso dizer maiorValor nao deveria ser uma varivel e sim um metedo,
Como voce pode visualizar foi criado um metodo chamado menorValor , e neste metodo voce esta comparando dois valores num1 and num2.
O correto a se fazer e dentro do metodo principal iniciar as variáveis(agregar valores iniciais), feito isso voce precisa instanciar a classe para gerar um objeto, feito isso apenas informe no print que voce precisa exibir o retorno do metodo.
Segue o codigo ![:slight_smile: :slight_smile:](https://www.guj.com.br/images/emoji/twitter/slight_smile.png?v=9)
import java.util.Scanner;
public class Ex04
{
float maiorValor(float num1, float num2)
{
if(num1 > num2)
return num1;
else
return num2;
}
public static void main(String[] args)
{
Scanner ler = new Scanner(System.in);
float num1 = 0f, num2 = 0f;
Ex04 ex = new Ex04();
System.out.println("Digite o primeiro valor: ");
num1 = ler.nextInt();
System.out.println("Digite o segundo valor: ");
num2 = ler.nextInt();
System.out.println("" + ex.maiorValor(num1, num2));
}
}