Validador de CPF
Publicado por Djames Suhanko 29/01/2006
[ Hits: 11.079 ]
Homepage: http://phantomclone.com
Um validador de cpf básico
#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");
}
}
Script para calcular raizes de uma equacao do 2 grau
Calculo de Área e Diametro do circulo
Nenhum comentário foi encontrado.
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)
Conhecendo o tmux: Multiplexador de Terminal
Acessando página do Syncthing fora da máquina local
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
SystemD e mais polêmicas. (10)
OpenClaude - toda IA joga mais que neymar (4)
Novos requisitos de sistema para a versão 26.04 (4)









