Class: Integer

Inherits:
Object
  • Object
show all
Defined in:
lib/aka_angka.rb

Overview

– Copyright © 2007 ArieKeren <[email protected]> ariekusumaatmaja.wordpress.com

$URL: svn+ssh://[email protected]/var/svn/aka/aka_angka/tags/REL_1_0_1/lib/aka_angka.rb $ $Author: ariekusuma $ $Date: 2007-08-29 21:34:10 0700 (Wed, 29 Aug 2007) $ $Rev: 34 $ +

Constant Summary collapse

KECIL =
%w(nol satu dua tiga empat lima enam tujuh delapan sembilan).freeze
BESAR =
%w(ribu juta milyar trilyun).unshift('').freeze

Instance Method Summary collapse

Instance Method Details

#to_indonesiaObject Also known as: to_id, to_indo, id, indo, indonesia

to_indonesia, to_id, to_indo, id, indo, indonesia enam metode diatas adalah untuk mengubah Integer menjadi String Terbilang.



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/aka_angka.rb', line 18

def to_indonesia
  if self < 10
    KECIL[self]
  elsif self < 20
    ( self % 10 ).belas
  elsif self < 100
    hasil = ( self / 10 ).puluh
    hasil += ' ' + ( self % 10 ).to_id unless ( self % 10 ).zero?
    hasil
  elsif self < 1_000
    if self % 100
      hasil = ( self / 100 ).buatan
      hasil += 'ratus'
      hasil += ' ' + ( self % 100 ).to_id unless ( self % 100 ).zero?
      hasil
    else
      ' ratus ' + ( self % 100 ).to_id #.chomp(' ')
    end
  else
    depan, belakang = case ( self.to_s.length ) % 3
    when 0
      [0..2, 3..-1].map { |e| self.to_s[e] }.map { |e| e.to_i }
    when 2
      [0..1, 2..-1].map { |e| self.to_s[e] }.map { |e| e.to_i }
    when 1
      [0..0, 1..-1].map { |e| self.to_s[e] }.map { |e| e.to_i }
    end
    hasil = depan.buatan + BESAR[(self.to_s.length-1)/3] + ' '
    hasil += belakang.to_id unless belakang.zero?
    hasil.chomp(' ')
  end
end

#to_rupiahObject Also known as: to_rp, rp, rupiah

to_rupiah, to_rp, rp, rupiah empat metode diatas untuk mengubah Integer menjadi String Terbilang dalam rupiah



58
59
60
# File 'lib/aka_angka.rb', line 58

def to_rupiah
  self.id + ' rupiah'
end