ruby 生成随机有效的CPF
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 生成随机有效的CPF相关的知识,希望对你有一定的参考价值。
#! /usr/bin/env ruby
# Setup initial variables
number = Random.new
cpf = []
vd1 = 0
vd2 = 0
# Generate the 9 first numbers
1.upto(9) do |i|
n = number.rand(0..9)
cpf << n
# start calculating the Verification Digits (VD)
vd1 += n * (11 - i)
vd2 += n * (12 - i)
end
# Calculate the first VD
vd1 = vd1 % 11
vd1 = vd1 < 2 ? 0 : 11 - vd1
# Add first VD to second VD
vd2 += vd1 * 2
# Calculate second VD
vd2 = vd2 % 11
vd2 = vd2 < 2 ? 0 : 11 - vd2
# Add VDs to CPF
cpf << vd1
cpf << vd2
# Print the new cpf
puts cpf.join
以上是关于ruby 生成随机有效的CPF的主要内容,如果未能解决你的问题,请参考以下文章
使用 Ruby(在 Rails 上)确认链接创建
ruby 使用Ruby生成随机字节
ruby生成随机成绩
ruby随机生成字符串
ruby rails生成随机字符串
ruby 生成随机字符串