Você está na página 1de 3

algoritmo "GERADOR DE DGITO VERIFICADOR DE CPF"

//ESSE PROGRAMA EM VISUALG MOSTRA


//QUAL QUE DEVE SER OS DOIS ULTIMOS DIGITOS DE SEU CPF
var
D1,D2,D3,D4,D5,D6,D7,D8,D9,D10,D11 : INTEIRO
SOMA, SOMA1, RESTO, RESTO1 : INTEIRO
inicio
ESCREVAL ("Digite 9 dgitos para o CPF, um de cada vez, e aperte enter depois de c
ada nmero:")
REPITA
LEIA(D1)
SE D1>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D1<10
LIMPATELA
ESCREVAL(D1)
REPITA
LEIA(D2)
SE D2>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D2<10
LIMPATELA
ESCREVAL(D1,D2)
REPITA
LEIA(D3)
SE D3>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D3<10
LIMPATELA
ESCREVAL(D1,D2,D3)
REPITA
LEIA(D4)
SE D4>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D4<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4)
REPITA
LEIA(D5)
SE D5>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D5<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4,D5)
REPITA

LEIA(D6)
SE D6>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D6<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4,D5,D6)
REPITA
LEIA(D7)
SE D7>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D7<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4,D5,D6," .",D7)
REPITA
LEIA(D8)
SE D8>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D8<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4,D5,D6," .",D7,D8)
REPITA
LEIA(D9)
SE D9>9 ENTAO
ESCREVAL("Digite um nmero de cada vez! Repita o 1 dgito")
FIMSE
ATE D9<10
LIMPATELA
ESCREVAL(D1,D2,D3," .",D4,D5,D6," .",D7,D8,D9)
SOMA<-D1*10+D2*9+D3*8+D4*7+D5*6+D6*5+D7*4+D8*3+D9*2
SOMA<-SOMA*10
RESTO<-SOMA MOD 11
SE SOMA MOD 11 = 10 ENTAO
RESTO<-0
FIMSE
D10<-RESTO
SOMA1<-D1*11+D2*10+D3*9+D4*8+D5*7+D6*6+D7*5+D8*4+D9*3+D10*2
SOMA1<-SOMA1*10
RESTO1<-SOMA1 MOD 11
SE SOMA1 MOD 11 = 10 ENTAO
RESTO1<-0
FIMSE
D11<-RESTO1
ESCREVA("O dgito verificador : ",D10,D11)

fimalgoritmo

Você também pode gostar