美文网首页
IOS 判断是否是合法银行卡

IOS 判断是否是合法银行卡

作者: Albert新荣 | 来源:发表于2019-04-13 17:33 被阅读0次
+(BOOL)checkBankCardNumber:(NSString*)cardNumber

{
    
    int oddSum =0;    // 奇数和
    
    int evenSum =0;    // 偶数和
    
    int allSum =0;    // 总和
    
    
    
    // 循环加和
    
    for(NSInteger i =1; i <= cardNumber.length; i++)
        
    {
        
        NSString *theNumber = [cardNumber substringWithRange:NSMakeRange(cardNumber.length-i,1)];
        
        int lastNumber = [theNumber intValue];
        
        if(i%2==0)
            
        {
            
            // 偶数位
            
            lastNumber *=2;
            
            if(lastNumber >9)
                
            {
                
                lastNumber -=9;
                
            }
            
            evenSum += lastNumber;
            
        }
        
        else
            
        {
            
            // 奇数位
            
            oddSum += lastNumber;
            
        }
        
    }
    
    allSum = oddSum + evenSum;
    
    // 是否合法
    
    if(allSum%10==0)
        
    {
        
        return YES;
        
    }
    
    else
        
    {
        
        return NO;
        
    }
    
}

相关文章

网友评论

      本文标题:IOS 判断是否是合法银行卡

      本文链接:https://www.haomeiwen.com/subject/qijrwqtx.html