Skip to content

Commit

Permalink
Atualiza docs do PoligonosApp.java
Browse files Browse the repository at this point in the history
Signed-off-by: Manoel Campos <manoelcampos@gmail.com>
  • Loading branch information
manoelcampos committed Jun 4, 2024
1 parent 0c49497 commit e1ff400
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions src/main/java/com/example/PoligonosApp.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
import javafx.stage.Stage;

import java.util.List;
import java.util.function.BinaryOperator;
import java.util.function.Function;
import java.util.stream.Stream;

Expand Down Expand Up @@ -159,9 +160,18 @@ protected List<String> tipoPoligonos(){
* Mas é exatamente isso que o reduce faz. Então para obter um ponto final contendo a soma da distância entre
* todos os pontos de um polígono, você deve usar o método reduce no parâmetro recebido no flatMap.</p>
*
* <p>No entanto, considere que temos um triângulo. Se utilizamos o método {@link Stream#reduce(BinaryOperator)},
* ele permitirá calcular a distância entre os pontos A -> B e B -> C somente.
* Mas para calcular o perímetro, precisamos fechar os pontos, obtendo também a distância entre C -> A.
* Assim, podemos começar do A (1o ponto) e indicar que o ponto anterior é o C.
* Apesar de iniciar do A, estaríamos calculando as distâncias entre C -> A, A -> B e B -> C, fechando
* todos os pontos. Com a versão do reduce indicada acima, não será possível fazer isso.
* Desta forma, a versão {@link Stream#reduce(Object, BinaryOperator)} deve ser usada no lugar.
* Leia o JavaDoc de tal método para mais detalhes.</p>
*
* <p>Após o flatMap, você vai ter um único ponto para cada polígono, que representa o último ponto encontrado
* e contém o perímetro do polígono (a soma da distância dos pontos). Desta forma, basta você retornar
* este resultado como uma nova lista de inteiros.</p>
* e contém o perímetro do polígono, que pode ser acessado por {@link Point#distance()}.
* Desta forma, basta retornar este resultado como uma nova lista de {@link Double}.</p>
*
* @return uma lista contendo o perímetro de cada polígono
*/
Expand Down

0 comments on commit e1ff400

Please sign in to comment.