【1127】假身份证
来源:互联网 发布:数据真实性 英文 编辑:程序博客网 时间:2024/05/20 11:52
描述:
某个国家的身份证号码的构成具有如下规则:
所有的身份证号由18位字符组成,前17位均为数字0-9,最后一位可以是数字0-9或者大写字母'Y'。
身份证号的最后一位可以由前17位计算得出,计算方法是:第一位数字*1+第二位数字*2+……+第十七位数字*17,最后一位就是累加和对11取模的结果(除以11后得到的余数),余数10用'Y'表示。
输入:
一行字符,长度等于18。
输出:
若输入的字符串符合上述身份证号的构成规则,就输出“Yes”,否则输出“No”。(结果输出后要输出回车)
输入样例:
610105198308252602
输出样例:
Yes
#include<iostream>using namespace std;int main(){char a[18],b;int i,sum=0;for(i=0;i<18;i++){cin>>a[i];}for(i=0;i<17;i++){sum=sum+(i+1)*(a[i]-'0');/*原理就是字符型实际是存储的整数,具体数值可查ASCII表,而数字0-9的ASCII是相邻的,数字字符通过减去基础的'0'的ASCII码值,就能得到对应的字符代表的实际数字,然后赋值给其他数字型变量即可。*/}b='0'+sum%11;if(b==58){b='Y';}if(b==a[17]){cout<<"Yes"<<endl;}else{cout<<"No"<<endl;}return (0);}
阅读全文
0 0
- 【1127】假身份证
- 假身份证
- 假身份证
- 假身份证的判定
- 身份证
- 身份证
- 身份证
- 身份证
- 【假身份证】ASCII码协助判断身份证的真假
- 昆明官渡区制作假身份证
- 昆明五华区制作假身份证
- 昆明五华区制作假身份证
- 昆明西山区制作假身份证
- 木马也办“假身份证” 数字签名面临信任危机
- 如何用c语言解决假身份证问题
- 身份证验证
- 身份证验证
- 身份证编号
- [noip2014]飞扬的小鸟 题解
- 编辑crontab添加Linux计划任务
- 自己动手搞一个拖动滑块,点击水波纹效果
- Linux简介
- plsql存储过程和java
- 【1127】假身份证
- Spark开发-Standalone模式
- SpringCloud第六篇-Zuul
- C++数组的使用
- java 基础的数组 添加
- 哈希表查找不成功的ASL问题
- git有关问题
- 线程安全
- python爬虫之异步XHR爬取