Wagner, boa tarde!

Você pode adaptar de outras linguagens. No link que segue está bem fácil de entender:
<http://www.devmedia.com.br/validando-o-cpf-em-uma-aplicacao-java/22097>

Fiz um primeiro exercício, mas não posso garantir que esteja plenamente funcional. Sugiro apenas como ponto de partida. Quem quiser melhorar o código é bem-vindo.

### <code r>
isCPF <- function(cpf.str) {
     cpf <- gsub('[^[:digit:]]+', '', cpf.str)
     
     ### primeiro dígito verificador:
     cpf.1 <- as.numeric(strsplit(substr(cpf, 1,9), "")[[1]])
     sm.1  <- sum(cpf.1 * 10:2) ### 249
     dig.1 <- ifelse((sm.1 %% 11)==0 | (sm.1 %% 11)>9, 0, 11-(sm.1 %% 11)) ### 4
     ### se o resto da divisão for 10 ou 11, o dígito será 0; 
     
     ### segundo dígito verificador:
     cpf.2 <- as.numeric(strsplit(substr(cpf, 1,10), "")[[1]])
     sm.2  <- sum(cpf.2 * 11:2) ### 299
     dig.2 <- ifelse((sm.2 %% 11)==0 | (sm.2 %% 11)>9, 0, 11-(sm.2 %% 11)) ### 9
     
     ### testa dígitos calculados
     ver <- paste0(dig.1, dig.2) == substr(cpf, 10,11)
     return(ver); print(ver)
}

isCPF("546.471.429-49") ### TRUE
isCPF("546.471.429-99") ### FALSE
### </code>

================================================
Éder Comunello
PhD Student in Agricultural Systems Engineering (USP/Esalq)
Brazilian Agricultural Research Corporation (Embrapa)
Dourados, MS, Brazil [22 16.5'S, 54 49.0'W]




Em 27 de janeiro de 2016 12:12, Wagner Tassinari <wtassinari@gmail.com> escreveu:
Olá pessoal, 

Alguém conhece algum código em R para verificar a consistência do número do CPF ?

Obrigado

--
Wagner S. Tassinari
Departamento de Matemática
Universidade Federal Rural do Rio de Janeiro.
BR-465, Km 7 - Seropedica, RJ - Brasil
CEP: 23890-000
Skype: wagner.tassinari
wtassinari@gmail.com
tassinari@ufrrj.br
-------------------------------------------------------
"Statistical thinking will one day be as necessary for efficient citizenship as the ability to read and write."  (H.G.Wellis)

_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.