Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<string.h>
- int processaCPF(int CPFP[], int digito, int etapa, int aumenta)
- {
- int j;
- int soma = 0;
- for (j=0;j<etapa;j++){
- soma = soma + CPFP[j] * aumenta;
- printf("\nSoma atual = %d\nDigito atual = %d\nAumenta = %d",soma,CPFP[j],aumenta);
- aumenta--;
- }
- if (soma%11 < 2){
- CPFP[digito] = 0;
- printf("\nDIGITO = %d",CPFP[digito]);
- }
- if (soma%11 >= 2){
- CPFP[digito] = 11 - (soma%11);
- printf("\nDIGITO = %d",CPFP[digito]);
- }
- }
- int main()
- {
- int controle = 1;
- while (controle == 1){
- int i;
- char cpf[11] = {" "};
- int CPFP[11] = {0,0,0,0,0,0,0,0,0};
- int digito = 9;
- int etapa = 9;
- int aumenta = 10;
- printf("\nDigita o CPF (9 caracteres):\n");
- gets(cpf);
- for (i=0;i<etapa;i++){
- CPFP[i] = (int)cpf[i] - 48;
- }
- processaCPF(CPFP,digito,etapa,aumenta); // primeiro digito
- digito++; etapa++; aumenta = 11;
- printf("\n================\n");
- processaCPF(CPFP,digito,etapa,aumenta); // segundo digito
- printf("\nCodigo verificador igual a %d%d",CPFP[9],CPFP[10]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment