Ir ao conteúdo

Posts recomendados

Postado

Fala galera, to com dificuldade para fazer um exercício, tenho q fazer um programa que diz se o CPF é valido ou não, mas sem usar o  caracpenum :tw_dissapointed:

  • Curtir 1
  • Membro VIP
Postado

Olá @Nonu.

 

Faça o seguinte: crie um algoritmo que faz essa verificação de CPF usando o Caracpnum(). Poste seu código aqui, depois damos um jeito.

 

obs.: antes de postar um código no fórum, favor verificar postagem:

 

No aguardo.

  • Curtir 1
Postado
var
cpf: caracter
n_cpf:vetor[1..11] de inteiro
soma1:vetor [1..9] de inteiro
soma2:vetor[1..10] de inteiro
s1:inteiro
s2:inteiro
x:inteiro
resto1:inteiro
resto2:inteiro
inicio
escreval("*******TESTE DE VALIDAÇÃO!*******")
escreval("Digite o CPF:")
leia(cpf)
para x de 1 ate 11 faca
n_cpf[x]:=caracpnum(copia(cpf,x,1))
fimpara
para x de 1 ate 9 faca
soma1[x]:= n_cpf[x]*(11-x)
s1:=s1+soma1[x]
fimpara
resto1:=s1 mod 11
se (resto1<2) então
resto1:=0
senao
resto1:= 11-resto1
fimse
para x de 1 ate 10 faca
soma2[x]:= n_cpf[x]*(12-x)
s2:=s2+soma2[x]
fimpara
resto2:=s2 mod 11
se (resto2<2) então
resto2:=0
senao
resto2:= 11-resto2
fimse
se(resto1=n_cpf[10])e (resto2=n_cpf[11])então
escreva(cpf," Esse Cpf é Valido")
senao
escreva(cpf," Esse Cpf não é Valido!")
fimse
fimalgoritmo

 

  • Curtir 1
  • Membro VIP
Postado

 

 

 

 

@EduardoS

 

47 minutos atrás, Nonu disse:

No botão code <> não aparece a opção visualg ou portugol.

 

Use HTML mesmo..

 

 

 

Para separar os dígitos, você pode usar a seguinte base lógica:

 

Ou seja, com esse exemplo do @EduardoS, dá para ir "pegando" os números da direita para esquerda.

 

No aguardo.

  • Curtir 1
Postado

No botão code <> não aparece a opção visualg ou portugol.

 

var
cpf: caracter
n_cpf:vetor[1..11] de inteiro
soma1:vetor [1..9] de inteiro
soma2:vetor[1..10] de inteiro
s1:inteiro
s2:inteiro
x:inteiro
resto1:inteiro
resto2:inteiro
inicio
escreval("*******TESTE DE VALIDAÇÃO!*******")
escreval("Digite o CPF:")
leia(cpf)
para x de 1 ate 11 faca
n_cpf[x]:=caracpnum(copia(cpf,x,1))
fimpara
para x de 1 ate 9 faca
soma1[x]:= n_cpf[x]*(11-x)
s1:=s1+soma1[x]
fimpara
resto1:=s1 mod 11
se (resto1<2) então
resto1:=0
senao
resto1:= 11-resto1
fimse
para x de 1 ate 10 faca
soma2[x]:= n_cpf[x]*(12-x)
s2:=s2+soma2[x]
fimpara
resto2:=s2 mod 11
se (resto2<2) então
resto2:=0
senao
resto2:= 11-resto2
fimse
se(resto1=n_cpf[10])e (resto2=n_cpf[11])então
escreva(cpf," Esse Cpf é Valido")
senao
escreva(cpf," Esse Cpf não é Valido!")
fimse
fimalgoritmo

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!