Pesquisar na Comunidade
Mostrando resultados para as tags ''OPERADORES DANDO ERRO''.
Encontrado 1 registro
-
Fala galera! Estou tentando criar um programa em C para descobrir o dígito verificador do CPF. Mas, o programa não funciona. Aparentemente todos os dados estão corretos, mas quando o executo as operações matematicas que eu mandei fazer não ocorrem do jeito esperado, dando um resultado diferente do ideal. Segue abaixo as instruções para descobrir os digitos verificadores e posteriormente as minhas linhas de códigos, estou programando no Code Blocks, conto com a ajuda de vocês. Obrigado. Regras para o cálculo dos dígitos verificadores do CPF É utilizado como exemplo o número: 123456789. Calcule a soma dos produtos dos nove digitos utilizando peso dois para unidade, peso 3 para dezena, peso 4 para centena e assim sucessivamente. Exemplo: 9*2+8*3+7*4+6*5+5*6+4*7+3*8+2*9+1*10 = 210 A dezena do número verificador é 0 caso o resto da divisão por 11 da soma dos produtos seja 0 ou 1; caso contrario a dezena corresponde a subtrair de 11 o resto da divisão por 11 da soma dos produtos. Exemplo: resto da divisão de 210 por 11 é 1 então a dezena do número verificador é 0. Calcule a soma dos produtos dos dez digitos, onde o digito menos significativo passa a ser a dezena dos digitos verificadores, utilizando os seguintes pesos: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11; Exemplo: 2*0+3*9+4*8+5*7+6*6+7*5+8*4+9*3+10*2+11*1=255. A unidade do número verificador é 0 caso o resto da divisão da soma dos produtos seja 0 ou 1; caso contrário a unidade corresponde a 11 menos o resto da divisão por 11 da soma dos produtos.Exemplo: resto da divisão de 255 por 11 é 2 então a unidade do número verificador é 11-2=9. --> PROGRAMA #include <stdio.h> #include <stdlib.h> int main() { int somaeprod; int resultado; int mult2; int mult3; int mult4; int mult5; printf("Forneca os 9 digitos do CPF:"); char d1,d2,d3,d4,d5,d6,d7,d8,d9; scanf("%c%c%c%c%c%c%c%c%c",&d9,&d8,&d7,&d6,&d5,&d4,&d3,&d2,&d1); somaeprod= (d1*2)+(d2*3)+(d3*4)+(d4*5)+(d5*6)+(d6*7)+(d7*8)+(d8*9)+(d9*10); resultado= somaeprod%11; if (resultado <2){ mult2= (resultado*2)+(d1*3)+(d2*4)+(d3*5)+(d4*6)+(d5*7)+(d6*8)+(d7*9)+(d8*10)+(d9*11); mult3= mult2%11; if (mult3 <2){ printf("%c%c%c%c%c%c%c%c%c %d%d",d9,d8,d7,d6,d5,d4,d3,d2,d1, resultado, mult3); } else { mult4= 11-mult3; printf("%c%c%c%c%c%c%c%c%c %d%d",d9,d8,d7,d6,d5,d4,d3,d2,d1, resultado, mult4); } } else { mult2= 11-resultado; mult3= (2*mult2)+(3*d1)+(4*d2)+(5*d3)+(6*d4)+(7*d5)+(8*d6)+(9*d7)+(10*d8)+(11*d9); mult4 = mult3%11; if ( mult4<2 ) { printf("%c%c%c%c%c%c%c%c%c %d%d",d9,d8,d7,d6,d5,d4,d3,d2,d1, mult2, mult4); } else{ mult5= 11-mult4; printf ("%c%c%c%c%c%c%c%c%c %d%d",d9,d8,d7,d6,d5,d4,d3,d2,d1, mult2, mult5); }} system("pause"); }
- 1 resposta
-
- CODIGO
- GERADOR DE CPF
- (e %d mais)