say_number 1.0.0 → 1.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.
@@ -1,368 +1,368 @@
1
- class Indonesia
2
- def self.initialize_sayer
3
- @satuan_id = ["nol", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan"]
4
- @anomalies = {10=>"sepuluh", 11=>"sebelas", 100=>"seratus", 1000=>"seribu", 1000000=>"juta", 1000000000=>"miliyar", 1000000000000=>"triliun" }
5
- end
6
-
7
- def self.say_koma(koma)
8
- @koma = []
9
- @koma.push("koma")
10
- @temp = koma.to_s.split("")
11
- @temp.each do |k|
12
- @koma.push(@satuan_id[k.to_i])
13
- end
14
- return @koma.join(" ")
15
- end
16
-
17
- def self.get_number_sayer_ratusan(number)
18
- @sayer = []
19
- @temp = number.first
20
- if number.count == 1
21
- return @sayer.push(@satuan_id[@temp])
22
- elsif number.count == 2
23
- if number[1] == 1
24
- if @temp == 1 or @temp == 0
25
- @sayer.push(@anomalies[10+@temp])
26
- else
27
- @sayer.push(@satuan_id[@temp]).push("belas")
28
- end
29
- else
30
- if @temp != 0
31
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp])
32
- else
33
- @sayer.push(@satuan_id[number[1]]).push("puluh")
34
- end
35
- end
36
- return @sayer
37
- elsif number.count == 3
38
- if number.last == 1
39
- @sayer.push(@anomalies[100])
40
- else
41
- if number.last == 0
42
- else
43
- @sayer.push(@satuan_id[number.last]).push("ratus")
44
- end
45
- end
46
- if number[1] == 1
47
- if @temp == 1 or @temp == 0
48
- @sayer.push(@anomalies[10+@temp])
49
- else
50
- @sayer.push(@satuan_id[@temp]).push("belas")
51
- end
52
- elsif number[1] == 0
53
- if @temp != 0
54
- @sayer.push(@satuan_id[@temp])
55
- end
56
- else
57
- if @temp != 0
58
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp])
59
- else
60
- @sayer.push(@satuan_id[number[1]]).push("puluh")
61
- end
62
- end
63
- return @sayer
64
- end
65
- end
66
-
67
- def self.get_number_sayer_ratus_ribuan(number)
68
- @sayer = []
69
- @temp = number.first
70
- if number.count == 1
71
- if @temp == 1
72
- @sayer.push(@anomalies[1000])
73
- else
74
- @sayer.push(@satuan_id[@temp]).push("ribu")
75
- end
76
- return @sayer
77
- elsif number.count == 2
78
- if number[1] == 1
79
- if @temp == 1 or @temp == 0
80
- @sayer.push(@anomalies[10+@temp]).push("ribu")
81
- else
82
- @sayer.push(@satuan_id[@temp]).push("belas").push("ribu")
83
- end
84
- else
85
- if @temp != 0
86
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push("ribu")
87
- else
88
- @sayer.push(@satuan_id[number[1]]).push("puluh").push("ribu")
89
- end
90
- end
91
- return @sayer
92
- elsif number.count == 3
93
- if number.last == 1
94
- if @temp != 0
95
- @sayer.push(@anomalies[100])
96
- else
97
- if number[1] != 0
98
- @sayer.push(@anomalies[100])
99
- else
100
- @sayer.push(@anomalies[100]).push("ribu")
101
- end
102
- end
103
- else
104
- if number.last == 0
105
- else
106
- if @temp != 0
107
- @sayer.push(@satuan_id[number.last]).push("ratus")
108
- else
109
- if number[1] != 0
110
- @sayer.push(@satuan_id[number.last]).push("ratus")
111
- else
112
- @sayer.push(@satuan_id[number.last]).push("ratus").push("ribu")
113
- end
114
-
115
- end
116
- end
117
- end
118
- if number[1] == 1
119
- if @temp == 1 or @temp == 0
120
- @sayer.push(@anomalies[10+@temp]).push("ribu")
121
- else
122
- @sayer.push(@satuan_id[@temp]).push("belas").push("ribu")
123
- end
124
- elsif number[1] == 0
125
- if @temp != 0
126
- @sayer.push(@satuan_id[@temp]).push("ribu")
127
- end
128
- else
129
- if @temp != 0
130
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push("ribu")
131
- else
132
- @sayer.push(@satuan_id[number[1]]).push("puluh").push("ribu")
133
- end
134
- end
135
- end
136
- return @sayer
137
- end
138
-
139
- def self.get_number_sayer_ratus_jutaan(number)
140
- @sayer = []
141
- @temp = number.first
142
- if number.count == 1
143
- return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000])
144
- elsif number.count == 2
145
- if number[1] == 1
146
- if @temp == 1 or @temp == 0
147
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000])
148
- else
149
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000])
150
- end
151
- else
152
- if @temp != 0
153
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000])
154
- else
155
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000])
156
- end
157
- end
158
- return @sayer
159
- elsif number.count == 3
160
- if number.last == 1
161
- if @temp != 0
162
- @sayer.push(@anomalies[100])
163
- else
164
- if number[1] != 0
165
- @sayer.push(@anomalies[100])
166
- else
167
- @sayer.push(@anomalies[100]).push(@anomalies[1000000])
168
- end
169
- end
170
- else
171
- if number.last == 0
172
- else
173
- if @temp != 0
174
- @sayer.push(@satuan_id[number.last]).push("ratus")
175
- else
176
- if number[1] != 0
177
- @sayer.push(@satuan_id[number.last]).push("ratus")
178
- else
179
- @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000])
180
- end
181
-
182
- end
183
- end
184
- end
185
- if number[1] == 1
186
- if @temp == 1 or @temp == 0
187
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000])
188
- else
189
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000])
190
- end
191
- elsif number[1] == 0
192
- if @temp != 0
193
- @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000])
194
- end
195
- else
196
- if @temp != 0
197
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000])
198
- else
199
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000])
200
- end
201
- end
202
- return @sayer
203
- end
204
- end
205
-
206
- def self.get_number_sayer_ratus_milyaran(number)
207
- @sayer = []
208
- @temp = number.first
209
- if number.count == 1
210
- return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000])
211
- elsif number.count == 2
212
- if number[1] == 1
213
- if @temp == 1 or @temp == 0
214
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000])
215
- else
216
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000])
217
- end
218
- else
219
- if @temp != 0
220
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000])
221
- else
222
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000])
223
- end
224
- end
225
- return @sayer
226
- elsif number.count == 3
227
- if number.last == 1
228
- if @temp != 0
229
- @sayer.push(@anomalies[100])
230
- else
231
- if number[1] != 0
232
- @sayer.push(@anomalies[100])
233
- else
234
- @sayer.push(@anomalies[100]).push(@anomalies[1000000000])
235
- end
236
- end
237
- else
238
- if number.last == 0
239
- else
240
- if @temp != 0
241
- @sayer.push(@satuan_id[number.last]).push("ratus")
242
- else
243
- if number[1] != 0
244
- @sayer.push(@satuan_id[number.last]).push("ratus")
245
- else
246
- @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000000])
247
- end
248
-
249
- end
250
- end
251
- end
252
- if number[1] == 1
253
- if @temp == 1 or @temp == 0
254
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000])
255
- else
256
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000])
257
- end
258
- elsif number[1] == 0
259
- if @temp != 0
260
- @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000])
261
- end
262
- else
263
- if @temp != 0
264
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000])
265
- else
266
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000])
267
- end
268
- end
269
- return @sayer
270
- end
271
- end
272
-
273
- def self.get_number_sayer_ratus_triliunan(number)
274
- @sayer = []
275
- @temp = number.first
276
- if number.count == 1
277
- return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000000])
278
- elsif number.count == 2
279
- if number[1] == 1
280
- if @temp == 1 or @temp == 0
281
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000000])
282
- else
283
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000000])
284
- end
285
- else
286
- if @temp != 0
287
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000000])
288
- else
289
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000000])
290
- end
291
- end
292
- return @sayer
293
- elsif number.count == 3
294
- if number.last == 1
295
- if @temp != 0
296
- @sayer.push(@anomalies[100])
297
- else
298
- if number[1] != 0
299
- @sayer.push(@anomalies[100])
300
- else
301
- @sayer.push(@anomalies[100]).push(@anomalies[1000000000000])
302
- end
303
- end
304
- else
305
- if number.last == 0
306
- else
307
- if @temp != 0
308
- @sayer.push(@satuan_id[number.last]).push("ratus")
309
- else
310
- if number[1] != 0
311
- @sayer.push(@satuan_id[number.last]).push("ratus")
312
- else
313
- @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000000000])
314
- end
315
-
316
- end
317
- end
318
- end
319
- if number[1] == 1
320
- if @temp == 1 or @temp == 0
321
- @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000000])
322
- else
323
- @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000000])
324
- end
325
- elsif number[1] == 0
326
- if @temp != 0
327
- @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000000])
328
- end
329
- else
330
- if @temp != 0
331
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000000])
332
- else
333
- @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000000])
334
- end
335
- end
336
- return @sayer
337
- end
338
- end
339
-
340
- def self.check_nol(saying)
341
- if saying == ["nol"] or saying == "nol"
342
- return ["nol"]
343
- end
344
- @check = saying.split(@satuan_id.first)
345
- if @check.count < 1
346
- return @check
347
- else
348
- return @check.map!{ |element| element.gsub("nol", "").gsub(" ", " ") }
349
- end
350
- end
351
-
352
- def self.get_number_sayer_per_separator(block, number)
353
- @array_number = number.split("").map { |i| i.to_i }
354
- if block == 0
355
- get_number_sayer_ratusan(@array_number)
356
- elsif block == 1
357
- get_number_sayer_ratus_ribuan(@array_number)
358
- elsif block == 2
359
- get_number_sayer_ratus_jutaan(@array_number)
360
- elsif block == 3
361
- get_number_sayer_ratus_milyaran(@array_number)
362
- elsif block == 4
363
- get_number_sayer_ratus_triliunan(@array_number)
364
- else
365
- raise "exceeds the calculation function"
366
- end
367
- end
1
+ class Indonesia
2
+ def self.initialize_sayer
3
+ @satuan_id = ["nol", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan"]
4
+ @anomalies = {10=>"sepuluh", 11=>"sebelas", 100=>"seratus", 1000=>"seribu", 1000000=>"juta", 1000000000=>"miliyar", 1000000000000=>"triliun" }
5
+ end
6
+
7
+ def self.say_koma(koma)
8
+ @koma = []
9
+ @koma.push("koma")
10
+ @temp = koma.to_s.split("")
11
+ @temp.each do |k|
12
+ @koma.push(@satuan_id[k.to_i])
13
+ end
14
+ return @koma.join(" ")
15
+ end
16
+
17
+ def self.get_number_sayer_ratusan(number)
18
+ @sayer = []
19
+ @temp = number.first
20
+ if number.count == 1
21
+ return @sayer.push(@satuan_id[@temp])
22
+ elsif number.count == 2
23
+ if number[1] == 1
24
+ if @temp == 1 or @temp == 0
25
+ @sayer.push(@anomalies[10+@temp])
26
+ else
27
+ @sayer.push(@satuan_id[@temp]).push("belas")
28
+ end
29
+ else
30
+ if @temp != 0
31
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp])
32
+ else
33
+ @sayer.push(@satuan_id[number[1]]).push("puluh")
34
+ end
35
+ end
36
+ return @sayer
37
+ elsif number.count == 3
38
+ if number.last == 1
39
+ @sayer.push(@anomalies[100])
40
+ else
41
+ if number.last == 0
42
+ else
43
+ @sayer.push(@satuan_id[number.last]).push("ratus")
44
+ end
45
+ end
46
+ if number[1] == 1
47
+ if @temp == 1 or @temp == 0
48
+ @sayer.push(@anomalies[10+@temp])
49
+ else
50
+ @sayer.push(@satuan_id[@temp]).push("belas")
51
+ end
52
+ elsif number[1] == 0
53
+ if @temp != 0
54
+ @sayer.push(@satuan_id[@temp])
55
+ end
56
+ else
57
+ if @temp != 0
58
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp])
59
+ else
60
+ @sayer.push(@satuan_id[number[1]]).push("puluh")
61
+ end
62
+ end
63
+ return @sayer
64
+ end
65
+ end
66
+
67
+ def self.get_number_sayer_ratus_ribuan(number)
68
+ @sayer = []
69
+ @temp = number.first
70
+ if number.count == 1
71
+ if @temp == 1
72
+ @sayer.push(@anomalies[1000])
73
+ else
74
+ @sayer.push(@satuan_id[@temp]).push("ribu")
75
+ end
76
+ return @sayer
77
+ elsif number.count == 2
78
+ if number[1] == 1
79
+ if @temp == 1 or @temp == 0
80
+ @sayer.push(@anomalies[10+@temp]).push("ribu")
81
+ else
82
+ @sayer.push(@satuan_id[@temp]).push("belas").push("ribu")
83
+ end
84
+ else
85
+ if @temp != 0
86
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push("ribu")
87
+ else
88
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push("ribu")
89
+ end
90
+ end
91
+ return @sayer
92
+ elsif number.count == 3
93
+ if number.last == 1
94
+ if @temp != 0
95
+ @sayer.push(@anomalies[100])
96
+ else
97
+ if number[1] != 0
98
+ @sayer.push(@anomalies[100])
99
+ else
100
+ @sayer.push(@anomalies[100]).push("ribu")
101
+ end
102
+ end
103
+ else
104
+ if number.last == 0
105
+ else
106
+ if @temp != 0
107
+ @sayer.push(@satuan_id[number.last]).push("ratus")
108
+ else
109
+ if number[1] != 0
110
+ @sayer.push(@satuan_id[number.last]).push("ratus")
111
+ else
112
+ @sayer.push(@satuan_id[number.last]).push("ratus").push("ribu")
113
+ end
114
+
115
+ end
116
+ end
117
+ end
118
+ if number[1] == 1
119
+ if @temp == 1 or @temp == 0
120
+ @sayer.push(@anomalies[10+@temp]).push("ribu")
121
+ else
122
+ @sayer.push(@satuan_id[@temp]).push("belas").push("ribu")
123
+ end
124
+ elsif number[1] == 0
125
+ if @temp != 0
126
+ @sayer.push(@satuan_id[@temp]).push("ribu")
127
+ end
128
+ else
129
+ if @temp != 0
130
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push("ribu")
131
+ else
132
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push("ribu")
133
+ end
134
+ end
135
+ end
136
+ return @sayer
137
+ end
138
+
139
+ def self.get_number_sayer_ratus_jutaan(number)
140
+ @sayer = []
141
+ @temp = number.first
142
+ if number.count == 1
143
+ return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000])
144
+ elsif number.count == 2
145
+ if number[1] == 1
146
+ if @temp == 1 or @temp == 0
147
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000])
148
+ else
149
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000])
150
+ end
151
+ else
152
+ if @temp != 0
153
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000])
154
+ else
155
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000])
156
+ end
157
+ end
158
+ return @sayer
159
+ elsif number.count == 3
160
+ if number.last == 1
161
+ if @temp != 0
162
+ @sayer.push(@anomalies[100])
163
+ else
164
+ if number[1] != 0
165
+ @sayer.push(@anomalies[100])
166
+ else
167
+ @sayer.push(@anomalies[100]).push(@anomalies[1000000])
168
+ end
169
+ end
170
+ else
171
+ if number.last == 0
172
+ else
173
+ if @temp != 0
174
+ @sayer.push(@satuan_id[number.last]).push("ratus")
175
+ else
176
+ if number[1] != 0
177
+ @sayer.push(@satuan_id[number.last]).push("ratus")
178
+ else
179
+ @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000])
180
+ end
181
+
182
+ end
183
+ end
184
+ end
185
+ if number[1] == 1
186
+ if @temp == 1 or @temp == 0
187
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000])
188
+ else
189
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000])
190
+ end
191
+ elsif number[1] == 0
192
+ if @temp != 0
193
+ @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000])
194
+ end
195
+ else
196
+ if @temp != 0
197
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000])
198
+ else
199
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000])
200
+ end
201
+ end
202
+ return @sayer
203
+ end
204
+ end
205
+
206
+ def self.get_number_sayer_ratus_milyaran(number)
207
+ @sayer = []
208
+ @temp = number.first
209
+ if number.count == 1
210
+ return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000])
211
+ elsif number.count == 2
212
+ if number[1] == 1
213
+ if @temp == 1 or @temp == 0
214
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000])
215
+ else
216
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000])
217
+ end
218
+ else
219
+ if @temp != 0
220
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000])
221
+ else
222
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000])
223
+ end
224
+ end
225
+ return @sayer
226
+ elsif number.count == 3
227
+ if number.last == 1
228
+ if @temp != 0
229
+ @sayer.push(@anomalies[100])
230
+ else
231
+ if number[1] != 0
232
+ @sayer.push(@anomalies[100])
233
+ else
234
+ @sayer.push(@anomalies[100]).push(@anomalies[1000000000])
235
+ end
236
+ end
237
+ else
238
+ if number.last == 0
239
+ else
240
+ if @temp != 0
241
+ @sayer.push(@satuan_id[number.last]).push("ratus")
242
+ else
243
+ if number[1] != 0
244
+ @sayer.push(@satuan_id[number.last]).push("ratus")
245
+ else
246
+ @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000000])
247
+ end
248
+
249
+ end
250
+ end
251
+ end
252
+ if number[1] == 1
253
+ if @temp == 1 or @temp == 0
254
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000])
255
+ else
256
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000])
257
+ end
258
+ elsif number[1] == 0
259
+ if @temp != 0
260
+ @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000])
261
+ end
262
+ else
263
+ if @temp != 0
264
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000])
265
+ else
266
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000])
267
+ end
268
+ end
269
+ return @sayer
270
+ end
271
+ end
272
+
273
+ def self.get_number_sayer_ratus_triliunan(number)
274
+ @sayer = []
275
+ @temp = number.first
276
+ if number.count == 1
277
+ return @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000000])
278
+ elsif number.count == 2
279
+ if number[1] == 1
280
+ if @temp == 1 or @temp == 0
281
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000000])
282
+ else
283
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000000])
284
+ end
285
+ else
286
+ if @temp != 0
287
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000000])
288
+ else
289
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000000])
290
+ end
291
+ end
292
+ return @sayer
293
+ elsif number.count == 3
294
+ if number.last == 1
295
+ if @temp != 0
296
+ @sayer.push(@anomalies[100])
297
+ else
298
+ if number[1] != 0
299
+ @sayer.push(@anomalies[100])
300
+ else
301
+ @sayer.push(@anomalies[100]).push(@anomalies[1000000000000])
302
+ end
303
+ end
304
+ else
305
+ if number.last == 0
306
+ else
307
+ if @temp != 0
308
+ @sayer.push(@satuan_id[number.last]).push("ratus")
309
+ else
310
+ if number[1] != 0
311
+ @sayer.push(@satuan_id[number.last]).push("ratus")
312
+ else
313
+ @sayer.push(@satuan_id[number.last]).push("ratus").push(@anomalies[1000000000000])
314
+ end
315
+
316
+ end
317
+ end
318
+ end
319
+ if number[1] == 1
320
+ if @temp == 1 or @temp == 0
321
+ @sayer.push(@anomalies[10+@temp]).push(@anomalies[1000000000000])
322
+ else
323
+ @sayer.push(@satuan_id[@temp]).push("belas").push(@anomalies[1000000000000])
324
+ end
325
+ elsif number[1] == 0
326
+ if @temp != 0
327
+ @sayer.push(@satuan_id[@temp]).push(@anomalies[1000000000000])
328
+ end
329
+ else
330
+ if @temp != 0
331
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@satuan_id[@temp]).push(@anomalies[1000000000000])
332
+ else
333
+ @sayer.push(@satuan_id[number[1]]).push("puluh").push(@anomalies[1000000000000])
334
+ end
335
+ end
336
+ return @sayer
337
+ end
338
+ end
339
+
340
+ def self.check_nol(saying)
341
+ if saying == ["nol"] or saying == "nol"
342
+ return ["nol"]
343
+ end
344
+ @check = saying.split(@satuan_id.first)
345
+ if @check.count < 1
346
+ return @check
347
+ else
348
+ return @check.map!{ |element| element.gsub("nol", "").gsub(" ", " ") }
349
+ end
350
+ end
351
+
352
+ def self.get_number_sayer_per_separator(block, number)
353
+ @array_number = number.split("").map { |i| i.to_i }
354
+ if block == 0
355
+ get_number_sayer_ratusan(@array_number)
356
+ elsif block == 1
357
+ get_number_sayer_ratus_ribuan(@array_number)
358
+ elsif block == 2
359
+ get_number_sayer_ratus_jutaan(@array_number)
360
+ elsif block == 3
361
+ get_number_sayer_ratus_milyaran(@array_number)
362
+ elsif block == 4
363
+ get_number_sayer_ratus_triliunan(@array_number)
364
+ else
365
+ raise "exceeds the calculation function"
366
+ end
367
+ end
368
368
  end