Ir para conteúdo
Fórum Script Brasil
  • 0

Calculo De Digitos


Guest Fonsecd

Pergunta

Olá pessoal, boa tarde, gostaria de saber a formula pra verificar se o digito do titulo eleitoral é válido ou não?desde já agradeço a a tençao!

Dario fonseca

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Existem vários sites sobre Delphi que tem rotina pra verificação de tudo o quanto é documento!!

Function ValidaTituloEleitor(NumTitulo: string): Boolean;
var
i, Soma : integer;
sTitulo: string;
Resto, Dig1, Dig2 : double;
begin
sTitulo := '';
for i := 1 to Length(NumTitulo) do
if (Copy(NumTitulo,i,1) >= '0') and (Copy(NumTitulo,i,1) <= '9') then
sTitulo := sTitulo + Copy(NumTitulo,i,1);
sTitulo := FormatFloat('0000000000000', StrToFloat(sTitulo));
Soma := StrToInt(sTitulo[1]) * 2 +
StrToInt(sTitulo[2]) * 9 +
StrToInt(sTitulo[3]) * 8 +
StrToInt(sTitulo[4]) * 7 +
StrToInt(sTitulo[5]) * 6 +
StrToInt(sTitulo[6]) * 5 +
StrToInt(sTitulo[7]) * 4 +
StrToInt(sTitulo[8]) * 3 +
StrToInt(sTitulo[9]) * 2;
Resto := Soma mod 11;

if (Resto = 0) or (Resto = 1) then
begin
if (Copy(sTitulo,10,2) = '01') or (Copy(sTitulo,10,2) = '02') then
begin
if Resto = 0 then
Dig1 := 1
else
Dig1 := 0;
end
else
Dig1 := 0
end
else
Dig1 := 11 - Resto;

Soma := StrToInt(FloatToStr((StrToInt(sTitulo[10]) * 4) +
(StrToInt(sTitulo[11]) * 3) + (Dig1 * 2)));
Resto := Soma mod 11;

if (Resto = 0) or (Resto = 1) then
begin
if (Copy(sTitulo,10,2) = '01') or (Copy(sTitulo,10,2) = '02') then
begin
if Resto = 0 then
Dig2 := 1
else
Dig2 := 0;
end
else
Dig2 := 0;
end
else
Dig2 := 11 - Resto;
if (StrToInt(sTitulo[12]) > Dig1) or (StrToInt(sTitulo[13]) > Dig2) then
Result := False
else
Result := True; 

www.delphi.eti.br

Adiconada dia: 11/02/04 às 11:53:09, por: Emir Teófilo Calife Neto

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...