astrological-number 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: []