Boa tarde!
Tenho um array de inteiros e terei de compará-lo com um segundo array, porém se aposição comparada do segundo for igual ou até 3 maior ele conta apenas uma vez
exemp:
existe uma ocorrencia no segundo 15, o usuário apertou o botão nos segundos 15 e 17, como está dentro da tolerância de 3 segundos o sistema deve contar apenas uma vez.
Montei a seguinte lógica, mas o sysout retorna os acertos fora dessa regra…
Neste código abaixo o sysout deveria retornar :Ruídos existentes 10 e Acertos:7 , mas está retornando 10 nos dois, ou seja, está contando os segundos 13,52,63 mais os 10,50,60.
public class Arrays {
public static void main(String[] args) {
int[] parametro = {0,10,20,30,40,50,60,70,80,90,100};
int[] selecionado = {0,10,13,20,40,50,52,60,63,67,70,75,88,91};
int acertos = 0;
for (int i = 1; i < selecionado.length; i++) {
for (int j=1; j < parametro.length; j++){
if (selecionado[i]>=parametro[j] && selecionado[i]<=(parametro[j]+3) ){
acertos++;
}
}
}
System.out.println("Ruídos Existentes:"+(parametro.length-1));
System.out.println("Acertos:"+acertos);
}
}
Alguém tem um luz?
Abraços!