Ir ao conteúdo

Significado de comandos C++


LeoPeoli

Posts recomendados

Postado

Bom Dia a Todos, estou desisperado por uma ajuda sobre o cód abaixo, sou iniciante em C++ e tenho que fazer um trabalho sobre todos os comandos do C++, peguei esse cód de verificador de CPF pronto, e não estou entendendo o que significa esse 48 que está nessa linha: cpf = cpf-48; , o que ele está fazendo dentro do algoritmo? Obrigado.

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(int argc, char *argv[])

{

char cpf[12];

int soma[11];

int x=10, y=0, i, erro=0;

int dig1, dig2;

printf("Digite aqui o numero do seu CPF)\n");

printf("Obs: Somente os 11 Numeros (sem pontos, nem tracos)\n");

fgets(cpf,12,stdin);

for(i=0;i<11;i++){

cpf = cpf-48;

}

//Calculando o Primeiro Dàgito Verificador

for(i=0;i<9;i++){

soma = cpf*x; //multiplicação dos valores de cada coluna

--x;

}

for(i=0;i<9;i++){

y=soma+y; //somatório dos resultados

}

y=y%11;

if(y<2)

dig1=0;

else

dig1=11-y;

//Calculando o Segundo DíVerificador

x=11;

for(i=0;i<10;i++){

soma = cpf*x; //multiplicação dos valores de cada coluna

--x;

}

y=0;

for(i=0;i<10;i++){

y=soma+y; //somatório dos resultados

}

y=y%11;

if(y<2)

dig2=0;

else

dig2=11-y;

//Verificando os digitos com o CPF

if(dig1 != cpf[9]){

erro=1;

}

if(dig2 != cpf[10]){

erro=1;

}

if(erro==1){

cpf[9]=dig1;

cpf[10]=dig2;

printf("CPF invalido!\n");

printf("O CPF correto seria: ");

for(i=0;i<11;i++){

printf("%d",cpf);

}

printf("\n");

system("PAUSE");

exit(1);

}

if(erro==0)

printf("OK! CPF valido!\n");

printf("\nCodigo gerado por Leonardo Peres!\n");

system("PAUSE");

return 0;

}

Postado

48 é o valor ASCII do caractere 0. Todo número, letra e etc tem oum código ASCII.

o programador diminui 48 para "transformar" o 0 em número.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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!