好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Luhn算法學習及其Ruby版實現代碼示例

Luhn算法學習及其Ruby版實現代碼示例

熱門標簽:徐州網絡外呼系統哪個好 高德地圖標注客服 百度地圖標注自定義圖片 湖州u友防封電銷卡 滴滴外呼系統 常德電銷平臺外呼系統軟件價格 白銀外呼paas系統 地圖標注賺錢項目注冊 電銷機器人廠商代理

關于LUHN算法
LUHN算法,主要用來計算信用卡等證件號碼的合法性。
1、從卡號最后一位數字開始,偶數位乘以2,如果乘以2的結果是兩位數,將兩個位上數字相加保存。
2、把所有數字相加,得到總和。
3、如果信用卡號碼是合法的,總和可以被10整除。
Luhn 算法或是Luhn 公式,也被稱作“模10算法”。它是一種簡單的校驗公式,一般會被用于身份證號碼,IMEI號碼,美國供應商識別號碼,或是加拿大的社會保險號碼的驗證。該算法是由IBM的科學家Hans Peter Luhn所創造,于1954年1月6日提出該專利的申請,并于1960年8月23日被授予,在美國的專利號為2950048。
該算法一直都被大家所公用,并且時至今日應用也很廣泛。它被指定在ISO/IEC7812-1。它的目的不是成為一種加密安全的哈希函數;它的目的是防止意外出現的錯誤,而不是惡意攻擊。很多信用卡和眾多的政府身份識別號碼都使用該算法從一系列的隨機數字中提取有效的數字。

優點和缺點
Luhn 算法會檢測到任何單碼的錯誤以及幾乎所有的相鄰數字換位的錯誤。但是它不會檢測兩個數字序列09轉90的錯誤(反之亦然)。它會檢測到十分之七的相同雙位數錯誤(不會檢測到22和55的互換,33和66的互換,44和77的互換)。其他更復雜的檢查數字算法,如費爾赫夫算法,可以檢測出更多的轉錄錯誤。模N的Luhn算法是Luhn算法的一個擴展,支持非數字字符串。因為該算法采取了從右向左的方式,而且零位會影響計算的結果。只有當零位造成了數位的移動或是用零來填充一串數字的開頭時才不會影響計算結果的生成。因此不論在將1234用零填充為0001234之前或是之后,使用Luhn算法得到的結果都是一樣的。
該算法在美國專利上是為了給手持或是機械設備計算校驗碼。所以它必須盡可能的簡單。

Ruby版實現
Luhn算法的基本原理非常簡單:(eg:49927398716)
第一步:把信用卡號倒序(61789372994)
第二步:取出倒序后的奇數位置上的號碼, 相加等到總和s1(s1=6+7+9+7+9+4=42)
第三步:取出倒序后的偶數位置上的號碼,每個號碼乘以2. (eg:2,16,6,4,18)
第四步:把第三步得到的大于10的號碼轉化為個位+十位。(eg:2,7,6,4,9)
第五步:把處理好的偶數位號碼相加,得到s2(s2=2+7+6+4+9=28)
第六步:判讀(s1+s2)%10 == 0則有效,否則無效。(有效)
代碼:

module LuhnValidator 
 def validate(number) 
  s1 = s2 = 0 
  number.to_s.reverse.chars.each_slice(2) do |odd, even| 
   s1 += odd.to_i 
 
   double = even.to_i * 2 
   double -= 9 if double >= 10 
   s2 += double 
  end 
  (s1 + s2) % 10 == 0 ? 'valid' : 'invalid' 
 end 
end 

您可能感興趣的文章:
  • Ruby實現的各種排序算法
  • Ruby實現的矩陣連乘算法
  • Ruby實現的合并排序算法
  • Ruby實現的最長公共子序列算法
  • Ruby實現的最優二叉查找樹算法
  • Ruby實現的3種快速排序算法
  • ruby實現的插入排序和冒泡排序算法

標簽:公主嶺 荊門 張家界 普洱 永州 遼寧 三沙 梧州

巨人網絡通訊聲明:本文標題《Luhn算法學習及其Ruby版實現代碼示例》,本文關鍵詞  Luhn,算法,學習,及其,Ruby,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Luhn算法學習及其Ruby版實現代碼示例》相關的同類信息!
  • 本頁收集關于Luhn算法學習及其Ruby版實現代碼示例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 日本一区二区不卡久久入口| 欧美AV色香蕉一区二区蜜桃小说 | 成人做爰免费视频免费看| 国产玉足Sm足控脚交视频| 性德国bbw肥女| 边摸边吃奶边叫床视频免费| 91精品夜夜夜一区二区蜜桃 | 尿道口摸上去一排排锯齿状肉芽| 搡老女人老妇搡老太的解决方法| JIZZJIZZ日本成熟少妇| 欧美三级电影在线看| 在线免费黄色网址| 三级做爰全部视频| 日本做爰高潮全过程免费| 6080午夜影院| 日本韩国一级片| 高肉h护士办公室play| 绿帽社在线入口www免费| 人妻无码AV在线| 欧美日韩综合在线视频免费看| 久久久久香蕉视频| 男与女的韩国电影| 欧美日韩大屁股自慰| 天天鲁天天爱天天做| 亚洲精品二区中文字幕| 人人爽人人射| 免费一级婬片AA毛片AA片A片| 国产精品13p| 《爆乳女教师 高清BD》国语| 老湿剧院| 他使劲尿她里面h| 多女主黄h长篇小说| 男生如何硬起来| 亚洲欧美中日韩| 卢龙县| 欧美成人免费午夜全| 国产V综合V亚洲欧美久久老熟妇| 成人精品午夜无码免费视小黄人 | 红楼梦婬史1~5集在线观看| 国产伦国产伦老熟300部| 被主人公开羞耻调教|