randwordjp 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ae03ea7c29932954807b070703055f045a452f0f
4
- data.tar.gz: a2adadaffd38b29b9d444c7eb74e27cc7b227bf4
3
+ metadata.gz: d91db7641cb11b3cf04de5baee25c1a1dc8f9bf0
4
+ data.tar.gz: d2e2102b8cddbb78b18fb7f8f9462dfed4361e19
5
5
  SHA512:
6
- metadata.gz: 665f77124a0a00724ee3a349f317807e11e338e0d159faf1e0c630f1219fa98376c3d231bbe0953b2c4c790149a493a3881ffa126feef16745717c6cf493dfa6
7
- data.tar.gz: 2c534505590db0ef6a0b503d813406a691225f0b4209f7e0a0a172c26d5dc043f5095bba99f281f3801f761fafed0371fbab7127fc4606c32b6a50760705ce63
6
+ metadata.gz: 82082495915046ad72334465ca4c9fab882883dc213c48341f3fb45e97ffcb2540730a2143a9b932d501ad81cc5eb8e34936cf9942d40b04f8866a9dafe96a09
7
+ data.tar.gz: 66fc857159c28578f1070cf1ec909376e47b1f1096dc31b06e016628452d75ec8eafbe83e326f6c81743b5e7da1e7d735ba5c97a4c9f5ff6b2a7e59ed9362785
@@ -2,5 +2,5 @@
2
2
  # ランダムで日本語文字列などを生成するライブラリとなります。
3
3
  # can get random words(sentence).
4
4
  module Randwordjp
5
- VERSION = '0.1.2'
5
+ VERSION = '0.1.3'
6
6
  end
data/lib/randwordjp.rb CHANGED
@@ -32,17 +32,13 @@ module Randwordjp
32
32
 
33
33
  # マイナンバーの文字列を取得する(チェックデジットはまだ仮設定)
34
34
  def self.mynumber()
35
- words = []
36
- 11.times do
37
- words << ('0'..'9').to_a.sample
38
- end
39
- chkdigit = 0
40
- words.each do |w|
41
- chkdigit += w.to_i
35
+ words = ""
36
+ 12.times do
37
+ words += ('0'..'9').to_a.sample
42
38
  end
43
- chkdigit = chkdigit.to_i % 10
44
- words << chkdigit
45
- return words.join
39
+ array_words = words.split("")
40
+ array_words[(array_words.length - 1)] = generate_mynumber_digit(words.to_s)
41
+ return array_words.join
46
42
  end
47
43
 
48
44
  # 全角日本語の文字列を取得する。
@@ -279,3 +275,32 @@ module Randwordjp
279
275
  return @address_data
280
276
  end
281
277
  end
278
+
279
+ private
280
+ def generate_mynumber_digit(number)
281
+ if number.to_s.length != 12
282
+ return false
283
+ end
284
+ array_number = number.to_s.split("")
285
+ array_number = array_number.reverse
286
+ sum_data = 0
287
+ array_number.each_index do |i|
288
+ if i == 0
289
+ next
290
+ end
291
+ p = array_number[i].to_i
292
+ if i <= 6
293
+ q = i + 1
294
+ else
295
+ q = i - 5
296
+ end
297
+ sum_data += p*q
298
+ end
299
+ sum_data %= 11
300
+ if sum_data <= 1
301
+ sum_data = 0
302
+ else
303
+ sum_data = 11 - sum_data
304
+ end
305
+ return sum_data
306
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: randwordjp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - inpwjp
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-11-09 00:00:00.000000000 Z
11
+ date: 2015-11-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel