Module: Kabal::GlobalRules::FractionalNumbers

Included in:
Language
Defined in:
lib/kabal/languages/global/fractional_numbers.rb

Instance Method Summary collapse

Instance Method Details

#fractional_part_name(number) ⇒ Object



13
14
15
16
17
18
19
20
21
# File 'lib/kabal/languages/global/fractional_numbers.rb', line 13

def fractional_part_name(number)
  @count_string = fractional_part_string(number).to_s.split('.')[1]
  @count_int = @count_string.to_i
  if there_zeros_before_fractional_part?
    number_name_with_zeros + natural_number_name(@count_int)
  else
    natural_number_name @count_int
  end
end

#fractional_part_order(number) ⇒ Object



4
5
6
7
8
9
10
11
# File 'lib/kabal/languages/global/fractional_numbers.rb', line 4

def fractional_part_order(number)
  number_string = number.to_s
  if number_string.include? '-'
    number_string.split('-')[1].to_i
  else
    number_string.split('.')[1].length
  end
end

#number_name_with_zerosObject



31
32
33
34
35
36
37
# File 'lib/kabal/languages/global/fractional_numbers.rb', line 31

def number_name_with_zeros
  name = ''
  zeros_number.times do
    name += names[:single][0] + space
  end
  name
end

#there_zeros_before_fractional_part?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/kabal/languages/global/fractional_numbers.rb', line 23

def there_zeros_before_fractional_part?
  @count_string.size != @count_int.to_s.size
end

#zeros_numberObject



27
28
29
# File 'lib/kabal/languages/global/fractional_numbers.rb', line 27

def zeros_number
  @count_string.size - @count_int.to_s.size
end