GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Olá, sou iniciante e tenho um problema com um código, OBRIGADO DESDE JÁ

Tags: #<Tag:0x00007f0a82da24b8>

Faça um programa que receba três números digitados pelo usúario e crie

funções que recebam esses três números por parâmetro de entrada e apresente:

(a) Qual desses números é o menor.
(b) Qual desses números é o maior.
© Os números ordenados de forma crescente.

// CÓDIGO

import java.util.Scanner;

public class Função {

static Scanner sc = new Scanner(System.in);

static int A(int n, int cont, int aux) {
    while (cont <= 3) {
        System.out.println("Insira os números desejados");
        n = sc.nextInt();
        if (n > aux) {
            aux = n;
        }
        cont++;
    }
    return aux;
}

static void B(int n, int aux, int cont) {
    while (cont <= 3) {
        System.out.println("Insira um valor desejado: ");
        n = sc.nextInt();
        if (n > aux) {
            aux = n;
            System.out.println("O maior valor solicitado foi: " + aux);
        }
    }
    cont++;
}

public static void main(String[] args) {

    A(); //ERRO ESTÁ AQUI.
}

}

a função espera 3 parâmetros do tipo int

Sim estou ciente mas como eu faço isso? Lembrando que o usuário precisa inserir os três números

Você precisa passar os parâmetros para o método A().

Como eu faço isso?

int numero1 = 3;
A(numero1);

Isso na classe main?

Onde você for chamar teu método, ué.

Amigo, entendi sua dúvida.
Vamos dividir o problema em partes:
1º Receber os valores pelo usuário
Então precisará criar no main a rotina que lê os valores digitados pelo usuário.
2º Criar a função que descobre o menor valor
3º Criar a função que descobre o maior valor
4º Criar a função que ordena esses valores.

Resumindo, você está errando chamando uma função que recebe parâmetros, mas na hora que você chama ela não passa nada.
Outro problema é que você não declara as variáveis n, aux, cont.

Mas esses parâmetros precisam ser inseridos pelo usuário.
E eu não sei fazer isso.
Funcionaria colocar ?
A(n);

Troque esses parâmetros por variáveis locais no seu método.

Até agora nenhuma das ajudas resolveu o meu problema de conseguir chamar o método.
Basicamente eu preciso aprender a só chamar o método KJKJJKJ

Assim:

nomeDoMetodo(valorDoParametro1, valorDoParametro2, valorDoParametro3);

Pelo enunciado, os parâmetros que você criou estão errados.
É pra passar 3 números e então verificar:

  • Qual desses números é o menor.
  • Qual desses números é o maior.
  • Os números ordenados de forma crescente.

Exemplo:

public void mostrarMaior(int numero1, int numero2, int numero3) {
    // Aqui você implementa a lógica pra ver qual é o maior número
}

public void mostrarMenor(int numero1, int numero2, int numero3) {
    // Aqui você implementa a lógica pra ver qual é o menor número
}

public void ordenar(int numero1, int numero2, int numero3) {
    // Aqui você implementa a lógica pra apresentar os números na ordem
}
//