判断信用卡卡号是否正确
2018-03-10 08:52
405 查看
【信用卡号的验证】
当你输入信用卡号码的时候,有没有担心输错了而造成损失呢?其实可以不必这么担心,因为并不是一个随便的信用卡号码都是合法的,它必须通过Luhn算法来验证通过。
该校验的过程:
1、从卡号最后一位数字开始,逆向将奇数位(1、3、5等等)相加。
2、从卡号最后一位数字开始,逆向将偶数位数字,先乘以2(如果乘积为两位数,则将其减去9),再求和。
3、将奇数位总和加上偶数位总和,结果应该可以被10整除。
例如,卡号是:5432123456788881
则,奇数位和=35
偶数位乘以2(有些要减去9)的结果:1 6 2 6 1 5 7 7,求和=35。
最后35+35=70 可以被10整除,认定校验通过。
请编写一个程序,从键盘输入卡号,然后判断是否校验通过。通过显示:“成功”,否则显示“失败”。
比如,用户输入:356827027232780
程序输出:成功
【参考测试用例】
356406010024817 成功
358973017867744 成功
356827027232781 失败
306406010024817 失败
358973017867754 失败#include<iostream>
#include<string.h>
using namespace std;
int main(){
char a[20];
int sum=0,b;
cin>>a;
b=strlen(a);
for(int i=1;i<=b;i++){
int c=a[b-i]-'0';
if(i%2!=0){
c=c*2;
if(c/10!=0)c-=9;
}
sum+=c;
}
if(sum%10==0) cout<<"成功";
else cout<<"失败";
return 0;
}将字符串存储在a中,并将a转换成int,然后逆序判断
当你输入信用卡号码的时候,有没有担心输错了而造成损失呢?其实可以不必这么担心,因为并不是一个随便的信用卡号码都是合法的,它必须通过Luhn算法来验证通过。
该校验的过程:
1、从卡号最后一位数字开始,逆向将奇数位(1、3、5等等)相加。
2、从卡号最后一位数字开始,逆向将偶数位数字,先乘以2(如果乘积为两位数,则将其减去9),再求和。
3、将奇数位总和加上偶数位总和,结果应该可以被10整除。
例如,卡号是:5432123456788881
则,奇数位和=35
偶数位乘以2(有些要减去9)的结果:1 6 2 6 1 5 7 7,求和=35。
最后35+35=70 可以被10整除,认定校验通过。
请编写一个程序,从键盘输入卡号,然后判断是否校验通过。通过显示:“成功”,否则显示“失败”。
比如,用户输入:356827027232780
程序输出:成功
【参考测试用例】
356406010024817 成功
358973017867744 成功
356827027232781 失败
306406010024817 失败
358973017867754 失败#include<iostream>
#include<string.h>
using namespace std;
int main(){
char a[20];
int sum=0,b;
cin>>a;
b=strlen(a);
for(int i=1;i<=b;i++){
int c=a[b-i]-'0';
if(i%2!=0){
c=c*2;
if(c/10!=0)c-=9;
}
sum+=c;
}
if(sum%10==0) cout<<"成功";
else cout<<"失败";
return 0;
}将字符串存储在a中,并将a转换成int,然后逆序判断
相关文章推荐
- 银行卡卡号是否正确判断(实战)
- 判断用户输入的银行卡号是否正确--基于Luhn算法的格式校验
- PHP验证信用卡卡号是否正确函数
- PHP验证信用卡卡号是否正确函数
- 判断用户输入的银行卡号是否正确的方法(基于Luhn算法的格式校验)
- iOS 中使用正则表达式判断身份证格式及银行卡号格式是否正确(推荐)
- 判断银行卡号是否正确
- iOS 正则表达式判断身份证格式以及银行卡号格式是否正确
- PHP验证信用卡卡号是否正确函数
- iOS 中使用正则表达式判断身份证格式及银行卡号格式是否正确(推荐)
- 判断年月日是否正确及获取当前天的前一天或前一个月
- 正确判断socket是否处于连接状态
- 从控制台输入用户名和密码, 然后 判断输入的用户名是否是@“Frank”, 密码 是否是 @“lanou”, 如果用户名和密码都正确,则输出登录成功, 否则输出登录失败. 提示:
- js判断手机号是否正确并返回的实现代码
- C#判断常见类型格式是否正确的类
- iOS判断身份证号码是否正确的方法
- IOS笔记—判断邮箱格式是否正确的代码
- shell脚本--判断输入的ip是否正确
- Java判断时间,Email,手机号是否为正确格式
- JavaScript 判断日期是否正确