Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Return false

Tem alguma diferença em usar:

return soma == cpf[9];

ao invés de:

return soma != cpf[9];

Por que optar trabalhar com o resultado "false" em vez de "true"? Me parece contra-intuitivo.

1 resposta
solução!

Olá, Alef, como vai?

Sua dúvida é muito interessante e importante para entender como o código foi estruturado! Vamos lá:

Diferença entre return soma == cpf[9]; e return soma != cpf[9];

A diferença está no objetivo do retorno da função e na forma como ela será usada.

  1. return soma == cpf[9];
  • Esse retorno avalia se o cálculo do dígito verificador corresponde ao nono dígito do CPF.
  • Retornaria true se o CPF fosse válido e false se não fosse.
  1. return soma != cpf[9];
  • Aqui, o retorno verifica se há uma discrepância entre o cálculo e o nono dígito do CPF.
  • Retorna true se o CPF for inválido e false se for válido.
Por que usar false para indicar validade?

Isso acontece porque, no contexto geral do código, a função validaPrimeiroDigito está sendo usada para detectar falhas no CPF, e não para afirmar que ele é válido. O return false indica que não houve erro nessa etapa de validação, enquanto o return true sinaliza que o CPF falhou na verificação. Usar "false" para indicar validade é uma prática comum em validações, pois permite combinar facilmente condições em expressões como if ou return.

Espero ter ajudado!

Siga firme nos seus estudos e conte com o fórum sempre que precisar!

Abraços :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado