基于两个条件检验第二代身份证号码的真伪

基于两个条件:
1.身份证号码位数是18位
2.第二代身份证号码最后一位的编码规则

check_id=function(id){
id=as.character(id)
w=c(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2)
v=c(1,0,“X”,9,8,7,6,5,4,3,2)
for (i in 1:length(id)) {
if(nchar(id[i])==16){
print(“第一代身份证系统无法识别,请人工检验”)
}else if(nchar(id[i])18){
sum=0;a=0;c=0
for (j in 1:17) {
sum=sum+as.numeric(substr(id[i],j,j))*w[j]
}
a=sum%%11
c=v[a+1]
if(csubstr(id[i],18,18)){
print(sprintf(“第%d个身份证号是真的”,i))
}else{
print(sprintf(“第%d个身份证号是假的,伪造身份证,你被逮捕了!”,i))
print(id[i])}
}
else{
print(sprintf(“第%d个身份证号是假的,伪造身份证,你被逮捕了!”,i))
print(id[i])
}
}
}

调用上面函数就可以了。

如有错误,欢迎交流

链接: link.

R语言:判断身份证号码真伪的函数编写相关推荐

  1. Java判断身份证号码

    1.描述 用java语言判断身份证号码是否有效,地区码.出身年月.校验码等验证算法 2.源代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...

  2. R语言使用car包的vif函数计算方差膨胀因子,并基于方差膨胀因子开方后和阈值(2)的判断来确认模型特征(预测变量)之间是否存在多重共线性(Multicollinearity)

    R语言使用car包的vif函数计算方差膨胀因子,并基于方差膨胀因子开方后和阈值(2)的判断来确认模型特征(预测变量)之间是否存在多重共线性(Multicollinearity) 目录

  3. 数据ETL——使用R语言对身份证进行校验,排序筛选等操作

    数据ETL--使用R语言对身份证进行校验,排序筛选等操作 CSV格式如图所示 1.分别查询:  吉林省的身份证号码(参考GB/T2260-2007标准)  校验码不正确的无效身份证号码  50岁 ...

  4. R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析、使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标y的关系

    R语言使用DALEX包的model_profile函数对caret包生成的多个算法模型的离散变量进行分析.使用偏依赖图(Partial Dependence Plots)解释某个离散特征和目标值y的关 ...

  5. R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵)、使用rotate参数指定进行斜交旋转提取因子、使用fa.diagram函数可视化斜交旋转因子分析、并解读可视化图形

    R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵).使用rotate参数指定进行斜交旋转提取因子.使用fa.diagram函数可视化斜交旋转因子分析.并解读可视化图形 目 ...

  6. R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行SpatialSign变换(将数据投影到单位圆之内)、设置method参数为spatialSign

    R语言使用caret包的preProcess函数进行数据预处理:对所有的数据列进行SpatialSign变换(将数据投影到单位圆之内).设置method参数为spatialSign 目录

  7. R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并使用箱图进行残差分布的可视化

    R语言使用DALEX包的model_performance函数对caret包生成的多个算法模型进行残差分布分析并使用箱图进行残差分布的可视化 目录

  8. R语言ggplot2可视化:使用geom_line函数将dataframe中数据可视化为时间序列(或折线图)(Time Series Plot From a Data Frame)、添加标题、副标题

    R语言ggplot2可视化:使用geom_line函数将dataframe中数据可视化为时间序列(或折线图)(Time Series Plot From a Data Frame).添加标题.副标题. ...

  9. R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵)、使用rotate参数指定进行斜交旋转提取因子、使用nfactors参数指定抽取的因子个数、fa函数因子分析结果解读

    R语言使用psych包的fa函数对指定数据集进行因子分析(输入数据为相关性矩阵).使用rotate参数指定进行斜交旋转提取因子.使用nfactors参数指定抽取的因子个数.fa函数因子分析结果解读(  ...

  10. R语言使用ggpubr包的ggarrange函数组合多张结论图(水平并排组合)

    R语言使用ggpubr包的ggarrange函数组合多张结论图(水平并排组合) 目录 R语言使用ggpubr包的ggarrange函数组合结论多张结论图(水平并排组合)

最新文章

  1. java入门(1) 程序运行机制及运行过程
  2. LoadRunner录制回放常见问题及解决方案
  3. 原生js删除html,原生js模拟v-for增加删除.html
  4. python绘制动点_Python asyncore / asynchat 基本传输实验 - Jacky Liu's Blog
  5. sd卡 写卡阻塞_Sony a7r4写卡速度测试
  6. python导入json模块_Python调用json模块代码实例
  7. 5.1 代码合并:Merge、Rebase的选择
  8. 成功解决ValueError: Parameter values for parameter (n_estimators) need to be a sequence.
  9. 康德的道德观与哲学观
  10. python 以行为单位进行字符串的切割
  11. jquery的extend和fn.extend
  12. NC文件数据提取完成(1.16)
  13. linux查看u盘的分区格式化,linux U盘格式化ext3
  14. 野火Linux内核,ebf_6ull_linux
  15. LeetCode——反转链表
  16. EMW3239 调试问题汇总
  17. 【ArchSummit】社交元宇宙的技术挑战与探索
  18. SpringCloud Netflix-Eureka使用
  19. QPixmap的setMask方法
  20. 【优达学城测评】Using CSV Module(Python)

热门文章

  1. Python控制仪器【2 ,控制矢量网络分析仪】
  2. 矢量网络分析仪程控软件
  3. 系统分析师成长之路 转
  4. 整天说“B超”,你知道“B”指的是什么吗?
  5. 两个字节合并成一个16位short类型
  6. 什么是索引?索引有哪几种?什么时候使用索引比较好?
  7. 2017年Android恶意软件专题报告
  8. 如何做好数据分析的数据采集工作?
  9. 【专栏】腾讯产品:写给产品经理和设计师的用户体验知识3
  10. linux文件夹的执行权限不够怎么解决