Validador de CPF

Publicado por Djames Suhanko 29/01/2006

[ Hits: 10.744 ]

Homepage: http://phantomclone.com

Download cpf.c




Um validador de cpf básico

  



Esconder código-fonte

#include <stdio.h>
// Armazena CPF digitado
char lercpf[13];
int cpflimpo[11];
int digitos[1];
int total=0, multi;
int conta, modulo;
int i;
// Funcao para ler o CPF
digcpf() {
printf("Digite seu CPF (123.456.789-AB ou 123456789AB)\nC.P.F.: >> ");
scanf("%s",&lercpf);
       }

//converter para numerico e remover caracteres nao-numericos
convCPF() {
         int a=0;
        for (i=0; i<14;i++)
         {
         if (lercpf[i] == '.' || lercpf[i] == '-')
            {
            i=i+1;
            }
         cpflimpo[a] = lercpf[i]-48;
         a = a+1;
         }
        }

// calcula o primeiro digito
digito1()   {
      int a=10;
      //2*10+5*9..
      for (i=0;i<9;i++)
         {
         multi=cpflimpo[i]*a;
         total=total+multi;
         a=a-1;
         }
      conta=total/11;
      modulo=total%11;
      digitos[0]=11-modulo;
      }

//calcula o segundo digito
digito2()   {
      int a=11;
      total=0;
      //2*10+5*9..
      for (i=0;i<10;i++)
         {
         multi=cpflimpo[i]*a;
         total=total+multi;
         a=a-1;

         }
      conta=total/11;
      modulo=total%11;
      digitos[1]=11-modulo;
      }
main()
{
digcpf();
convCPF();
digito1();
digito2();
printf("\e[H\e[2J");
if (cpflimpo[9] == digitos[0] && cpflimpo[10] == digitos[1])
   {
   printf("\nC.P.F. valido\n ");
   }
else   
   {
   printf("Invalido !!!\n");
   }
}

Scripts recomendados

Conta e substitui caracteres de uma frase

MÁGICO

pegavalor.c - Interação com usuário

Funções, Ponteiros e Struct

Barra de carregamento (Loading Bar)


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts