Problemas no resultado

2 respostas
P

Alguém pode me ajudar? Tem vezes que o resultado do meu método é true e outras é false (para os mesmos valores), por exemplo

System.out.println(j.resultado(1000000)); //esse imprime true

System.out.println(j.resultado(1000001)); //esse false

System.out.println(j.resultado(1000012)); //false

se eu mandar imprimir apenas System.out.println(j.resultado(1000001)); ele imprime true.

Sem falar que em um laço for apenas o primeiro é true, o resto sempre false. Já testei o método com vários valores, sempre dá certo quando mando imprimir uma vez só, mas acontece que eu vou precisar usar um for porque são vários valores.

if(array[i] + array[i+1] + array[i+2] <= 5){

cont++;

}

if(i == array.length-3){

if(cont == array.length-2){

return true;

} else return false;

}

return teste(array,i+1);
}

public boolean resultado(int valor){

int[] m = new int[7];

for(int s = m.length-1; s >=0; s–){

m[s] = valor%10;

valor = valor/10;

}

return teste(m, 0);

}

2 Respostas

pmlm

Não sei o que é o teu método teste porque parece que não fizeste paste de tudo, mas deixo a dúvida… o teu cont é inicializado a 0 para cada invocação?

P

Ahhhhh, declarei o cont como variável global, ele não zerava. MUUUUUUUITO OBRIGADA POR ABRIR MEUS OLHOS

Criado 19 de março de 2014
Ultima resposta 19 de mar. de 2014
Respostas 2
Participantes 2