Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <locale.h>
- using namespace std;
- //=========VARS=========
- long long int CPF;
- //=========DÍGITOS VERIFICADORES=========
- int dig1, dig2;
- int main(){
- setlocale(LC_ALL, "Portuguese");
- cout << "Digite um número de oito ou nove dígitos: ";
- cin >> CPF;
- //=========VERIFICAÇÃO DE VALIDADE=========
- if(CPF < 10000000 || CPF > 999999999){
- cout << "\n\nNúmero inválido!\n";
- main();
- } else {
- //=========NUM VER 1=========
- dig1 = (CPF / 100000000) * 10 + (CPF / 10000000 % 10) * 9 + (CPF / 1000000 % 10) * 8 + (CPF / 100000 % 10) * 7 + (CPF / 10000 % 10) * 6 + (CPF / 1000 % 10) * 5 + (CPF / 100 % 10) * 4 + (CPF / 10 % 10) * 3 + (CPF % 10) * 2;
- if((dig1 % 11) < 2){
- dig1 = 0;
- } else {
- dig1 = 11 - (dig1 % 11);
- }
- //=========NUM VER 2=========
- dig2 = (CPF / 100000000) * 11 + (CPF / 10000000 % 10) * 10 + (CPF / 1000000 % 10) * 9 + (CPF / 100000 % 10) * 8 + (CPF / 10000 % 10) * 7 + (CPF / 1000 % 10) * 6 + (CPF / 100 % 10) * 5 + (CPF / 10 % 10) * 4 + (CPF % 10) * 3 + dig1 * 2;
- if((dig2 % 11) < 2){
- dig2 = 0;
- } else {
- dig2 = 11 - (dig2 % 11);
- }
- //=========MOSTRAR CPF=========
- cout << "Seu CPF é " << CPF / 100000000 << CPF / 10000000 % 10 << CPF / 1000000 % 10 << "." << CPF / 100000 % 10 << CPF / 10000 % 10 << CPF / 1000 % 10 << "." << CPF / 100 % 10 << CPF / 10 % 10 << CPF % 10 << "-" << dig1 << dig2;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement