1
resposta

Faltou implementar uma lógica

Faltou a lógica nos casos em que o resto da divisão para verificação dos dígitos resulta em 10 ou 11. Nestes cados o resto se torna 0, para verificar corretamente os dígitos. Abaixo, coloquei a function corrigida comentada na linha adicionada.

function verificaDigito(cpf, totalDeDigitos, peso, digitoDeVerificacao) {
  let soma = sommaNumeroCPF(cpf, totalDeDigitos, peso);
  let resto = (soma * 10) % 11;
  if (resto === 10 || resto === 11) resto = 0;  /*adicionei esta linha para completar a lógica.*/
return resto === digitoDeVerificacao;
}
1 resposta

Oi, Denis, tudo bem?

Obrigada por compartilhar essa solução!! Vou propor a equipe adicionar uma nota na aula!

Bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software