Oi Eduardo!
Aqui, temos uma condicional if
que verifica três funções de validação: validaNumerosRepetidos(cpf)
, validaPrimeiroDigito(cpf)
e validaSegundoDigito(cpf)
.
A função validaNumerosRepetidos(cpf), verifica se todos os números do CPF são iguais, como "111.111.111-11". Se forem, a função retorna true
, indicando que o CPF é inválido.
Já a validaPrimeiroDigito(cpf), valida o primeiro dígito verificador do CPF. Se o cálculo do primeiro dígito não bater com o dígito fornecido, a função retorna true
, indicando que o CPF é inválido.
Por fim a validaSegundoDigito(cpf), valida o segundo dígito verificador do CPF. Se o cálculo do segundo dígito não bater com o dígito fornecido, a função retorna true
, indicando que o CPF é inválido.
O operador ||
(ou) é usado para combinar essas três verificações. Então, se qualquer uma das funções retornar true
, a mensagem "Esse cpf não existe!" será exibida. Isso significa que o CPF é considerado inválido se:
- Os números forem repetidos,
- O primeiro dígito verificador estiver incorreto,
- Ou o segundo dígito verificador estiver incorreto.
Por outro lado, se todas as funções retornarem false
, a mensagem "Existe!" será exibida, indicando que o CPF é válido.
Ou seja, as três são analisadas e podem ou não, serem true
, e nesse caso o true
é uma problemática, e um não impede o outro, afinal os números podem ser diferentes, tornando a primeira condição false
, mas o cálculo do segundo digito retorna "true".
Nesse caso, como validaSegundoDigito(cpf)
retornou true
, a condição do if
será satisfeita e a mensagem "Esse cpf não existe!" será exibida.
Reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!
Sucesso ✨
Um grande abraço e até mais!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!