astrological-number 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/astrological_number.rb +41 -0
  3. metadata +44 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 03b96673fb47d333f6c4ef8b8fe2635868043304
4
+ data.tar.gz: 6339f70b8ba3eb60d5f85eb621f7c8eaba8947e4
5
+ SHA512:
6
+ metadata.gz: 93f97899e200fd9f4fe1570eea6f4afe73731fdecab3826306887caba79aceefa0678a4ed4628b9e4f607537b03fd961a899d2d30457060f0c4aac65d8d47d69
7
+ data.tar.gz: f738b75b3616cdce181bbd5c43b9be7d77697a5dbfb97129f7b8b1650ab570ac144402dd4eb90690caf22f4d918738a3310f1d7a1dbd51d9ff81c0e310b14f5d
@@ -0,0 +1,41 @@
1
+ class AstrologicalNumber
2
+ attr_accessor :date_of_birth, :day, :month, :year
3
+
4
+ def self.get_number
5
+ p "Please enter your date_of_birth in dd-mm-yyyy format"
6
+ AstrologicalNumber.new(gets)
7
+ end
8
+
9
+ def initialize(dob)
10
+ @date_of_birth = dob
11
+ if valid?
12
+ @day, @month, @year = dob.split('-')
13
+ p "Your Lucky Number is #{calculate_number}"
14
+ else
15
+ p "Please enter date_of_birth in correct format (dd-mm-yyyy) "
16
+ AstrologicalNumber.new(gets)
17
+ end
18
+ end
19
+
20
+ def calculate_number
21
+ dob = [day, month, year].join.to_i
22
+ total(dob)
23
+ end
24
+
25
+ private
26
+
27
+ def valid?
28
+ !((date_of_birth =~ /(0[1-9]|[1-2][0-9]|3[0-1])-(0[1-9]|1[0-2])-\d{4}/).nil?)
29
+ end
30
+
31
+ def total(d)
32
+ sum = 0
33
+ while d!=0
34
+ rem = d%10
35
+ d = d/10
36
+ sum += rem
37
+ end
38
+ sum < 10 ? sum : total(sum)
39
+ end
40
+ end
41
+
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: astrological-number
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Punit Jain
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-01-18 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Get the astrological number from date of birth
14
+ email: jainpunit786@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/astrological_number.rb
20
+ homepage: http://rubygems.org/gems/astrological-number
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubyforge_project:
40
+ rubygems_version: 2.4.6
41
+ signing_key:
42
+ specification_version: 3
43
+ summary: astrological number
44
+ test_files: []