-
Notifications
You must be signed in to change notification settings - Fork 548
Open
Description
Ola @cami-la , tudo bem?
travei no desafio 14, encontrei um aluno que fez um codigo genial:
Optional<Integer> maiorPrimo = numeros.stream()
.filter(n -> {
if (Math.abs(n) < 2)
return false;
for (int i = 2; i < Math.abs(n); i++) {
if (Math.abs(n) % i == 0)
return false;
}
return true;
})
.max(Comparator.naturalOrder());
System.out.println("O maior número primo é: " + maiorPrimo.get());
}
testei e funcionou, porem nao entendi, porque ele utilizou o Math.abs, pesquisei sobre essa função, e ela serve para retornar o valor absoluto, como utilizamos divisao com mod zero, seria mesmo necessario? não entend o fato delle utilizar tambem : .filter(n -> { if (Math.abs(n) < 2) return false; , qual seria o sentido de comprar se o valor absoluto de "n" por exemplo da lista, se o valor absoluto de 2 é menor que 2? e caso seja, retorne false e por ai segue o codigo dele, poderia me explicar o codigo dele, assim posso tentar entender a logica dele
vinicius-olivrsilva
Metadata
Metadata
Assignees
Labels
No labels