Método Consulta

2 respostas
D

Pessoal, o método abaixo está retornando
valor encontrado
valor não encontrado
valor não encontrado
valor não encontrado
valor não encontrado

public void consulta(int valor){ for(int i=0;i<n;i++) if(valor==v[i]) System.out.println("Valor encontrado"); else System.out.println("Valor nao encontrado" ); }
Como seria o modo politicamente correto de se fazer isso? Para que retorne apenas uma vez a mensagem?
OU valor encontrado ou valor não encontrado

2 Respostas

pmlm
darth javader:
Como seria o modo politicamente correto de se fazer isso? Para que retorne apenas uma vez a mensagem?

Para que retorne ou que escreva?

public void consulta(int valor){
    boolean encontra = false;
    for(int i=0;i<n;i++) {
        if(valor==v[i]) {
            encontra = true;
            break; //já encontrou, pode parar de percorrer o array
        }
    }
    if (encontra){
        System.out.println("Valor  encontrado");
    } else {
        System.out.println("Valor nao encontrado" );
    }
 
}
T

Usualmente você faz algo como:

public boolean encontrar (int valor) {
    for (int i = 0; i < n; ++i) {
        if (valor == v[i]) return true;
    }
    return false;
}

public void consulta (int valor) {
    if (encontrar (valor))
        System.out.println ("Valor encontrado");
    else
        System.out.println ("Valor não encontrado");
}
Criado 23 de abril de 2009
Ultima resposta 23 de abr. de 2009
Respostas 2
Participantes 3