bato 0.0.13 → 0.0.15
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +10 -9
- data/README.md +585 -393
- data/lib/bato/bersiyon.rb +1 -1
- data/lib/bato/core_ext/integer.rb +1 -0
- data/lib/bato/core_ext/kernel.rb +2 -0
- data/lib/bato/core_ext/string.rb +1 -0
- data/mga_halimbawa/batotris.bt +2 -2
- metadata +3 -3
data/README.md
CHANGED
@@ -1,100 +1,155 @@
|
|
1
1
|
# Bato
|
2
2
|
|
3
|
-
Ang
|
3
|
+
Ang **Bato Programming Language** ay isang scripting language sa wikang
|
4
|
+
*Filipino*.
|
4
5
|
|
5
|
-
|
6
|
+
Ang layunin ng proyektong ito ay upang mag turo ng *Computer Programming* sa
|
7
|
+
wikang *Filipino*, sa madaling maintindihang wika upang matutuhan ito.
|
8
|
+
|
9
|
+
Subukan ang [Bato *interactive online console*](https://trybato.herokuapp.com/).
|
10
|
+
|
11
|
+
## Media
|
12
|
+
|
13
|
+
* Yukihiro Matzumoto (Chief Designer of Ruby) - https://twitter.com/yukihiro_matz/status/962193256929832960
|
14
|
+
* The Register - https://www.theregister.co.uk/2018/03/21/philippines_ruby_bato
|
15
|
+
* Speed Magazine - https://www.speedmagazine.ph/bato-tagalog-programming-language-by-joel-bryan-juliano/
|
16
|
+
* University of the Philippines (UPLB Mathematical Sciences Society) - https://twitter.com/uplbmass1973/status/1429684834511716355
|
17
|
+
* De La Salle University (Access DLSU) - https://www.facebook.com/AccessDLSU/posts/1666465890181933
|
18
|
+
* San Beda University (BITS San Beda) - https://www.facebook.com/BITSSanBeda/photos/a.476052709434852/1391553414551439
|
19
|
+
* Philippine Web Design Organization (Form Function Class) - https://twitter.com/ffcph/status/1015212784089534464
|
20
|
+
* FullStack HQ - https://twitter.com/fullstackhq/status/1429035930640388106
|
21
|
+
* Programmer Ako - https://www.facebook.com/ProgrammerLang/posts/808487952978981
|
22
|
+
* Algo Filipino - https://www.facebook.com/AlgoFilipino/posts/149472316929258
|
23
|
+
* Binalatongan Community College (BITS) - https://www.facebook.com/BinalatonganCommunityCollegeBITS/posts/207649374632071
|
24
|
+
* Philippine Insider TV (YouTube) - https://www.facebook.com/philippineinsidertv/posts/186868113430790
|
25
|
+
* Jeck's Tech Nook - https://www.facebook.com/jeck.tech.nook/posts/442902100786391
|
26
|
+
* YCombinator Hacker News - https://twitter.com/hnbot/status/951816054161977344
|
6
27
|
|
7
28
|
## Pagtatalaga
|
8
29
|
|
9
|
-
Kailangan mo munang i-install ang Ruby programming language (version
|
10
|
-
at pagkatapos maitalaga ang Ruby, i-run naman ito
|
30
|
+
Kailangan mo munang *i-install* ang Ruby programming language (version 3.0.1 o mas
|
31
|
+
bago) at pagkatapos maitalaga ang Ruby, *i-run* naman ito
|
11
32
|
|
12
|
-
|
33
|
+
```shell
|
34
|
+
gem install bato
|
35
|
+
```
|
13
36
|
|
14
37
|
## Bakit Bato?
|
15
38
|
|
16
|
-
Ang
|
17
|
-
Ang kadahilanang ginamit ang pangalang 'bato' ay
|
39
|
+
Ang **bato** ay hango sa [Ruby Programming Language](http://www.ruby-lang.org/)
|
40
|
+
na may *Filipino* sintaks. Ang kadahilanang ginamit ang pangalang 'bato' ay
|
41
|
+
dahil ang Ruby ay isang uri ng bato.
|
18
42
|
|
19
43
|
## Ang unang program
|
20
44
|
|
21
45
|
Gumawa ng isang file na `kamusta_mundo.bt` na may mga sumusunod na nilalaman
|
22
46
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
47
|
+
```ruby
|
48
|
+
kapag 1 > 0
|
49
|
+
mag_print "Kumusta mundo!"
|
50
|
+
kung_hindi
|
51
|
+
mag_print "Mayroong sira"
|
52
|
+
wakas
|
53
|
+
```
|
28
54
|
|
29
55
|
at pa-andarin ang program sa pamamagitan ng
|
30
56
|
|
31
|
-
|
57
|
+
```shell
|
58
|
+
bato kamusta_mundo.bt
|
59
|
+
```
|
32
60
|
|
33
61
|
## Sintaks
|
34
62
|
|
35
63
|
### Pagsusulat
|
36
64
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
65
|
+
```ruby
|
66
|
+
"Ito ay mga serye ng mga sulat sa wikang Filipino"
|
67
|
+
<<-KATAPUSAN
|
68
|
+
mga salita
|
69
|
+
na nahahati
|
70
|
+
sa ilang mga hilera
|
71
|
+
KATAPUSAN
|
72
|
+
```
|
43
73
|
|
44
74
|
### Dinikit na mga pamamaraan
|
45
|
-
|
46
|
-
|
75
|
+
|
76
|
+
```ruby
|
77
|
+
'magandang araw'.baliktad # => 'wara gnadnagam'
|
78
|
+
'Pangungusap'.haba # => 11
|
79
|
+
```
|
47
80
|
|
48
81
|
### Ekspresyong Boolean
|
49
82
|
|
50
|
-
|
51
|
-
|
52
|
-
|
83
|
+
```ruby
|
84
|
+
tama
|
85
|
+
mali
|
86
|
+
hindi tama
|
87
|
+
```
|
53
88
|
|
54
89
|
### Kondisyon
|
55
90
|
|
56
91
|
Paggamit ng kondisyon.
|
57
92
|
|
58
|
-
kapag halaga > 100 dapat
|
59
|
-
"ayos lang"
|
60
|
-
kung_kapag halaga > 0 dapat
|
61
|
-
"ok lang"
|
62
|
-
kung_hindi
|
63
|
-
"wala lang"
|
64
|
-
wakas
|
65
93
|
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
94
|
+
```ruby
|
95
|
+
halaga = 100
|
96
|
+
|
97
|
+
mensahe = kapag halaga > 100 dapat
|
98
|
+
"ayos lang"
|
99
|
+
kung_kapag halaga > 0 dapat
|
100
|
+
"ok lang"
|
101
|
+
kung_hindi
|
102
|
+
"wala lang"
|
103
|
+
wakas
|
104
|
+
|
105
|
+
mag_print mensahe
|
106
|
+
|
107
|
+
mensahe =
|
108
|
+
kung_sakaling halaga
|
109
|
+
pagka 5 dapat "lima"
|
110
|
+
pagka 4 dapat "apat"
|
111
|
+
kung_hindi "wala"
|
112
|
+
wakas
|
113
|
+
|
114
|
+
mag_print mensahe
|
115
|
+
```
|
71
116
|
|
72
117
|
### Pamamaraan sa pagkakamali
|
73
118
|
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
119
|
+
NOTE: Hindi ito gagana sa online compiler, ngunit sa pag *i-install* lang sa
|
120
|
+
iyon computer. Tignan ang seksiyon na [Pagtatalaga](#Pagtatalaga)
|
121
|
+
|
122
|
+
```ruby
|
123
|
+
bilang_ng_pagkakamali = 0
|
124
|
+
simula
|
125
|
+
# mag komento kapag hindi sigurado
|
126
|
+
1 / 0
|
127
|
+
iligtas => pagkakamali
|
128
|
+
bilang_ng_pagkakamali += 1
|
129
|
+
subukang_muli kapag bilang_ng_pagkakamali < 3
|
130
|
+
iangat "malubhang pagkakamali"
|
131
|
+
siguraduhing
|
132
|
+
mag_print "Tapos na"
|
133
|
+
wakas
|
134
|
+
```
|
85
135
|
|
86
136
|
### Panuntunan
|
87
137
|
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
138
|
+
```ruby
|
139
|
+
ang iprintAngPangalan(pangalan = wala)
|
140
|
+
mensahe =
|
141
|
+
kapag pangalan != wala
|
142
|
+
"Magandang araw sa iyo #{pangalan}!"
|
143
|
+
kung_hindi
|
144
|
+
"Magandang araw!"
|
94
145
|
wakas
|
146
|
+
|
147
|
+
mag_print mensahe
|
148
|
+
wakas
|
95
149
|
|
96
|
-
|
97
|
-
|
150
|
+
iprintAngPangalan "Maria" # => "Magandang araw sa iyo Maria!"
|
151
|
+
iprintAngPangalan # => "Magandang araw!"
|
152
|
+
```
|
98
153
|
|
99
154
|
## Paggamit ng mga ekspresyon ng mga salita sa program
|
100
155
|
|
@@ -102,460 +157,560 @@ Paggamit ng kondisyon.
|
|
102
157
|
|
103
158
|
Maari kang gumamit sa alin sa mga sumusunod sa pagtatapos ng program
|
104
159
|
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
160
|
+
```ruby
|
161
|
+
wakas
|
162
|
+
dulo
|
163
|
+
katapusan
|
164
|
+
```
|
109
165
|
Halimbawa
|
110
166
|
|
111
|
-
|
112
|
-
|
113
|
-
mag_print "Mayroon akong #{bilang_ng_saging} saging! 🍌"
|
114
|
-
kung_hindi
|
115
|
-
mag_print "Wala na akong saging! 😐"
|
116
|
-
wakas
|
167
|
+
```ruby
|
168
|
+
bilang_ng_saging = 2
|
117
169
|
|
170
|
+
mensahe =
|
171
|
+
kapag bilang_ng_saging > 1
|
172
|
+
"Mayroon akong #{bilang_ng_saging} saging! 🍌"
|
173
|
+
kung_hindi
|
174
|
+
"Wala na akong saging! 😐"
|
175
|
+
wakas
|
176
|
+
|
177
|
+
mag_print mensahe
|
178
|
+
```
|
118
179
|
### kung_iba
|
119
180
|
|
120
181
|
Kapag ang ekspresyon ay hindi nasunod maaring gumamit sa alin sa mga sumusunod
|
121
182
|
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
183
|
+
```ruby
|
184
|
+
iba
|
185
|
+
kung_iba
|
186
|
+
kung_hindi
|
187
|
+
kung_hindi_naman
|
188
|
+
kapag_hindi
|
189
|
+
kapag_hindi_naman
|
190
|
+
kung_hindi_pa
|
191
|
+
kapag_hindi_pa
|
192
|
+
at_kung_hindi
|
193
|
+
at_kapag_hindi
|
194
|
+
at_kung_hindi_naman
|
195
|
+
at_kapag_hindi_naman
|
196
|
+
at_kapag_hindi_pa
|
197
|
+
at_kung_hindi_pa
|
198
|
+
maliban_dito
|
199
|
+
maliban_sa_mga_ito
|
200
|
+
```
|
138
201
|
|
139
202
|
Halimbawa
|
140
203
|
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
204
|
+
```ruby
|
205
|
+
pangalan_mo = "Maliksi"
|
206
|
+
|
207
|
+
mensahe =
|
208
|
+
kapag_ang pangalan_mo == "Maliksi"
|
209
|
+
"Ikaw ay si #{pangalan_mo}!"
|
210
|
+
kung_hindi_naman
|
211
|
+
"Magandang araw sa iyo #{pangalan_mo}!"
|
212
|
+
wakas
|
147
213
|
|
214
|
+
mag_print mensahe
|
215
|
+
```
|
148
216
|
### sakali
|
149
217
|
|
150
|
-
Kapag mayroon kang ekspresyon na madaming resulta gawa ng mga iba't ibang
|
218
|
+
Kapag mayroon kang ekspresyon na madaming resulta gawa ng mga iba't ibang
|
219
|
+
kondisyon, maari kang gumamit ng mga sumusunod
|
151
220
|
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
221
|
+
```ruby
|
222
|
+
sakaling
|
223
|
+
sakali
|
224
|
+
kung_sakaling
|
225
|
+
sakali_na
|
226
|
+
kung_sakali_na
|
227
|
+
kalagayan
|
228
|
+
kaukulan
|
229
|
+
```
|
159
230
|
|
160
231
|
Halimbawa
|
161
232
|
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
233
|
+
```ruby
|
234
|
+
pangalan_mo = "Mabait"
|
235
|
+
|
236
|
+
mensahe =
|
237
|
+
sakaling pangalan_mo
|
238
|
+
ay "Maliksi"
|
239
|
+
"Ikaw ay si Maliksi!"
|
240
|
+
ay "Matipuno"
|
241
|
+
"Ikaw ay si Matipuno!"
|
242
|
+
ay "Mabait"
|
243
|
+
"Ikaw ay si Mabait!"
|
244
|
+
maliban_dito
|
245
|
+
"Magandang araw sa iyo!"
|
246
|
+
wakas
|
247
|
+
|
248
|
+
mag_print mensahe
|
249
|
+
```
|
175
250
|
### tiyakin
|
176
251
|
|
177
|
-
Kung mayroon kang ekspresyon na gusto mong masunod kahit ano pa ang kahihinatnan
|
252
|
+
Kung mayroon kang ekspresyon na gusto mong masunod kahit ano pa ang kahihinatnan
|
253
|
+
nito, gumamit ng mga sumusunod
|
254
|
+
|
255
|
+
NOTE: Hindi ito gagana sa online compiler, ngunit sa pag *i-install* lang sa
|
256
|
+
iyon computer. Tignan ang seksiyon na [Pagtatalaga](#Pagtatalaga)
|
178
257
|
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
258
|
+
```ruby
|
259
|
+
tiyaking
|
260
|
+
matiyak
|
261
|
+
tiyakin
|
262
|
+
siguraduhing
|
263
|
+
siguraduhin
|
264
|
+
panigurado
|
265
|
+
```
|
185
266
|
|
186
267
|
Halimbawa
|
187
268
|
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
269
|
+
```ruby
|
270
|
+
simulan
|
271
|
+
itaas "May sira!"
|
272
|
+
agapan
|
273
|
+
mag_print "Ipagpatuloy..."
|
274
|
+
itaas "May nasira na na-agapan"
|
275
|
+
tiyaking
|
276
|
+
mag_print "Tapos na"
|
277
|
+
wakas
|
278
|
+
```
|
196
279
|
|
197
280
|
### grupo
|
198
281
|
|
199
282
|
Ang grupo ay ang lalagyanan ng mga kabilang na klase sa iyong program
|
200
283
|
|
201
|
-
|
284
|
+
```ruby
|
285
|
+
grupo
|
286
|
+
```
|
202
287
|
|
203
288
|
Halimbawa
|
204
289
|
|
205
|
-
|
206
|
-
|
290
|
+
```ruby
|
291
|
+
grupo Hayop
|
292
|
+
KABUUAN = 5
|
207
293
|
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
294
|
+
bilang Aso
|
295
|
+
ang tahol
|
296
|
+
mag_print "Woof..."
|
297
|
+
wakas
|
212
298
|
|
213
|
-
|
214
|
-
|
215
|
-
|
299
|
+
ang kumanin
|
300
|
+
mag_print "..."
|
301
|
+
wakas
|
216
302
|
|
217
|
-
|
218
|
-
|
219
|
-
wakas
|
220
|
-
wakas
|
303
|
+
ang ikembot_ang_buntot
|
304
|
+
mag_print "Ginagawa ko ito dahil masaya ako!"
|
221
305
|
wakas
|
306
|
+
wakas
|
307
|
+
wakas
|
222
308
|
|
223
|
-
|
224
|
-
|
225
|
-
|
309
|
+
dami = 6
|
310
|
+
browny = Hayop::Aso.kumatawan
|
311
|
+
browny.ikembot_ang_buntot kapag dami >= Hayop::KABUUAN
|
312
|
+
```
|
226
313
|
|
227
314
|
### ngunit_kapag
|
228
315
|
|
229
|
-
Gumamit ng ngunit_kapag kapag mayroon ka pang kondisyon maliban sa nauna ng
|
316
|
+
Gumamit ng ngunit_kapag kapag mayroon ka pang kondisyon maliban sa nauna ng
|
317
|
+
kondisyon
|
230
318
|
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
319
|
+
```ruby
|
320
|
+
ngunit_kapag
|
321
|
+
kung_kapag
|
322
|
+
ngunit_kapag_ang
|
323
|
+
kung_kapag_ang
|
324
|
+
```
|
235
325
|
|
236
326
|
Halimbawa
|
237
327
|
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
328
|
+
```ruby
|
329
|
+
pangalan_mo = "Masipag"
|
330
|
+
kapag_ang pangalan_mo == "Matipuno"
|
331
|
+
mag_print "Ikaw ay si Matipuno!"
|
332
|
+
ngunit_kapag_ang pangalan_mo == "Masipag"
|
333
|
+
mag_print "Ikaw ay si Masipag!"
|
334
|
+
maliban_sa_mga_ito
|
335
|
+
mag_print "Wala kang rekord saamin!"
|
336
|
+
wakas
|
337
|
+
```
|
246
338
|
|
247
339
|
### ang
|
248
340
|
|
249
341
|
Ang ang ay may kalakip na pangalan upang ito ay matawag sa program
|
250
342
|
|
251
|
-
|
252
|
-
|
253
|
-
|
343
|
+
```ruby
|
344
|
+
ang
|
345
|
+
panuntunan
|
346
|
+
panuntunang
|
347
|
+
```
|
254
348
|
|
255
349
|
Halimbawa
|
256
350
|
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
351
|
+
```ruby
|
352
|
+
ang id(estudyante = {})
|
353
|
+
pangalan = estudyante[:pangalan]
|
354
|
+
edad = estudyante[:edad]
|
355
|
+
tirahan = estudyante[:tirahan]
|
356
|
+
baitang = estudyante[:baitang]
|
357
|
+
seksiyon = estudyante[:seksiyon]
|
358
|
+
|
359
|
+
mag_print <<-KATAPUSAN
|
360
|
+
Pangalan: #{pangalan}
|
361
|
+
Edad: #{edad}
|
362
|
+
Tirahan: #{tirahan}
|
363
|
+
Baitang: #{baitang}
|
364
|
+
Seksiyon: #{seksiyon}
|
365
|
+
KATAPUSAN
|
366
|
+
wakas
|
367
|
+
|
368
|
+
id({
|
369
|
+
pangalan: "Maliksi Batubalani",
|
370
|
+
edad: "13",
|
371
|
+
tirahan: "Ilocos",
|
372
|
+
baitang: "6",
|
373
|
+
seksiyon: "Masisipag"
|
374
|
+
})
|
375
|
+
```
|
280
376
|
|
281
377
|
### agapan
|
282
378
|
|
283
|
-
Ang agapan ay ginagamit kung mayroon maaaring mangyaring pagkakamali na gusto
|
379
|
+
Ang agapan ay ginagamit kung mayroon maaaring mangyaring pagkakamali na gusto
|
380
|
+
mong maisalba o mailigtas
|
284
381
|
|
285
|
-
|
286
|
-
|
382
|
+
```ruby
|
383
|
+
iligtas
|
384
|
+
agapan
|
385
|
+
```
|
287
386
|
|
288
387
|
Halimbawa
|
289
388
|
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
389
|
+
```ruby
|
390
|
+
simulan
|
391
|
+
1 / 0
|
392
|
+
agapan
|
393
|
+
mag_print "Hindi ito posible!"
|
394
|
+
wakas
|
395
|
+
```
|
295
396
|
|
296
397
|
### dapat
|
297
398
|
|
298
399
|
Kapag mayroon kang ekspresyon na mayroong inaasahan na resulta, gumamit ng dapat
|
299
400
|
|
300
|
-
|
401
|
+
```ruby
|
402
|
+
dapat
|
403
|
+
```
|
301
404
|
|
302
405
|
Halimbawa
|
303
406
|
|
304
|
-
|
407
|
+
```ruby
|
408
|
+
panulat_mo = "lapis"
|
305
409
|
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
410
|
+
papel = sakaling panulat_mo
|
411
|
+
ay "lapis" dapat "bond paper"
|
412
|
+
ay "ballpen" dapat "dilaw na papel"
|
413
|
+
maliban_sa_mga_ito "intermediate paper"
|
414
|
+
wakas
|
311
415
|
|
312
|
-
|
416
|
+
mag_print "Ang papel na gagamitin mo ay #{papel}"
|
417
|
+
```
|
313
418
|
|
314
419
|
### magbigay_daan
|
315
420
|
|
316
|
-
Kapag ang ekspresyon ay mayroong inaasahang dapat na ibigay na resulta habang
|
421
|
+
Kapag ang ekspresyon ay mayroong inaasahang dapat na ibigay na resulta habang
|
422
|
+
gumagana pa ang program, gumamit ng magbigay_daan
|
317
423
|
|
318
|
-
|
319
|
-
|
424
|
+
```ruby
|
425
|
+
magbigay_daan
|
426
|
+
bigyang_daan
|
427
|
+
```
|
320
428
|
|
321
429
|
Halimbawa
|
322
430
|
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
|
332
|
-
|
333
|
-
|
334
|
-
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
431
|
+
```ruby
|
432
|
+
ang gumawaNgID
|
433
|
+
mag_print "------------------------------------------"
|
434
|
+
magbigay_daan
|
435
|
+
mag_print "------------------------------------------"
|
436
|
+
wakas
|
437
|
+
|
438
|
+
ang ID(impormasyon = {})
|
439
|
+
gumawaNgID na_ganito
|
440
|
+
mag_print <<-KATAPUSAN
|
441
|
+
Pangalan: #{impormasyon[:pangalan]}
|
442
|
+
Edad: #{impormasyon[:edad]}
|
443
|
+
Tirahan: #{impormasyon[:tirahan]}
|
444
|
+
Baitang: #{impormasyon[:baitang]}
|
445
|
+
Seksiyon: #{impormasyon[:seksiyon]}
|
446
|
+
KATAPUSAN
|
447
|
+
wakas
|
448
|
+
wakas
|
449
|
+
|
450
|
+
ID({
|
451
|
+
pangalan: "Maliksi Batubalani",
|
452
|
+
edad: "13",
|
453
|
+
tirahan: "Ilocos",
|
454
|
+
baitang: "6",
|
455
|
+
seksiyon: "Masisipag"
|
456
|
+
})
|
457
|
+
```
|
348
458
|
|
349
459
|
### para_sa
|
350
460
|
|
351
461
|
Kapag may listahan na nais mong isa isahin, gumamit ng para_sa
|
352
462
|
|
353
|
-
|
354
|
-
|
463
|
+
```ruby
|
464
|
+
para_sa
|
465
|
+
para_ang
|
466
|
+
```
|
355
467
|
|
356
468
|
Halimbawa
|
357
469
|
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
470
|
+
```ruby
|
471
|
+
listahan_ng_mga_prutas = ["mansanas", "mangga", "guava", "santol", "ubas"]
|
472
|
+
para_sa prutas na_nasa listahan_ng_mga_prutas ganito_gawin
|
473
|
+
mag_print prutas.sa_malaking_titik
|
474
|
+
wakas
|
475
|
+
```
|
362
476
|
|
363
477
|
### subukang_muli
|
364
478
|
|
365
|
-
Ginagamit ang subukang_muli upang umikot muli ang ekspresyon kung may sirang
|
479
|
+
Ginagamit ang subukang_muli upang umikot muli ang ekspresyon kung may sirang
|
480
|
+
nangyari at nais mo ulit subukan pa andarin
|
366
481
|
|
367
|
-
|
482
|
+
```ruby
|
483
|
+
subukang_muli
|
484
|
+
```
|
368
485
|
|
369
486
|
Halimbawa
|
370
487
|
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
488
|
+
```ruby
|
489
|
+
bilang_ng_pagkakamali = 0
|
490
|
+
simula
|
491
|
+
1 / 0
|
492
|
+
agapan => pagkakamali
|
493
|
+
bilang_ng_pagkakamali += 1
|
494
|
+
subukang_muli kapag bilang_ng_pagkakamali < 3
|
495
|
+
iangat "malubhang pagkakamali"
|
496
|
+
siguraduhing
|
497
|
+
mag_print "Tapos na"
|
498
|
+
wakas
|
499
|
+
```
|
381
500
|
|
382
501
|
### ibalik
|
383
502
|
|
384
503
|
Kapag mayroon kang ibabalik na resulta sa nagtawag ng ang
|
385
504
|
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
505
|
+
```ruby
|
506
|
+
ibalik
|
507
|
+
ibalik_ang
|
508
|
+
magbalik
|
509
|
+
magbalik_nang
|
510
|
+
isauli
|
511
|
+
isauli_ang
|
512
|
+
ibigay
|
513
|
+
ibigay_ang
|
514
|
+
magbigay
|
515
|
+
magbigay_nang
|
516
|
+
```
|
396
517
|
|
397
518
|
Halimbawa
|
398
519
|
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
520
|
+
```ruby
|
521
|
+
ang magdagdag_ng_isa(halaga)
|
522
|
+
idadagdag = halaga + 1
|
523
|
+
ibalik_ang halaga
|
524
|
+
wakas
|
525
|
+
```
|
403
526
|
|
404
527
|
### kapag
|
405
528
|
|
406
529
|
Ginagamit ang kapag kung meron kang kondisyon sa iyong ekspresyon
|
407
530
|
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
531
|
+
```ruby
|
532
|
+
kapag
|
533
|
+
kapag_ang
|
534
|
+
kapag_na_ang
|
535
|
+
kung
|
536
|
+
kung_ang
|
537
|
+
```
|
413
538
|
|
414
539
|
Halimbawa
|
415
540
|
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
541
|
+
```ruby
|
542
|
+
kapag_ang 1 > 0
|
543
|
+
mag_print "mas madami!"
|
544
|
+
kung_iba
|
545
|
+
mag_print "may sira"
|
546
|
+
wakas
|
547
|
+
```
|
421
548
|
|
422
549
|
### bilang
|
423
550
|
|
424
551
|
Ang bilang ay ang pagsasabilang ng isang kaukulang klasipikasyon
|
425
552
|
|
426
|
-
|
553
|
+
```ruby
|
554
|
+
bilang
|
555
|
+
```
|
427
556
|
|
428
557
|
Halimbawa
|
429
558
|
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
wakas
|
559
|
+
```ruby
|
560
|
+
grupo Tinapay
|
561
|
+
bilang Donut
|
562
|
+
ang flavor
|
563
|
+
mag_print 'Strawberry!'
|
436
564
|
wakas
|
565
|
+
wakas
|
566
|
+
wakas
|
437
567
|
|
438
|
-
|
439
|
-
|
440
|
-
|
568
|
+
tinapay = Tinapay::Donut.kumatawan
|
569
|
+
tinapay.flavor
|
570
|
+
=> 'Strawberry!'
|
571
|
+
```
|
441
572
|
|
442
573
|
### habang
|
443
574
|
|
444
575
|
Gumamit ng habang kung may hinihintay pa na resulta, kondisyon o pangyayari
|
445
576
|
|
446
|
-
|
447
|
-
|
577
|
+
```ruby
|
578
|
+
habang
|
579
|
+
habang_ang
|
580
|
+
```
|
448
581
|
|
449
582
|
Halimbawa
|
450
583
|
|
451
|
-
|
584
|
+
```ruby
|
585
|
+
may_buhay = totoo
|
452
586
|
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
587
|
+
habang may_buhay
|
588
|
+
mag_print 'may pag-asa!'
|
589
|
+
hinto
|
590
|
+
wakas
|
591
|
+
=> 'may pag-asa!'
|
592
|
+
```
|
458
593
|
|
459
594
|
### alyas
|
460
595
|
|
461
|
-
Gumamit ng alyas kung kailangan mo tawagin sa ibang pangalan ang iyong
|
596
|
+
Gumamit ng alyas kung kailangan mo tawagin sa ibang pangalan ang iyong
|
597
|
+
panuntunan
|
462
598
|
|
463
|
-
|
599
|
+
```ruby
|
600
|
+
alyas
|
601
|
+
```
|
464
602
|
|
465
603
|
Halimbawa
|
466
604
|
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
605
|
+
```ruby
|
606
|
+
bilang Hayop
|
607
|
+
ang aso
|
608
|
+
mag_print 'si browny ay mabait!'
|
609
|
+
wakas
|
610
|
+
alyas browny aso
|
611
|
+
wakas
|
473
612
|
|
474
|
-
|
475
|
-
|
476
|
-
|
613
|
+
hayop = Hayop.kumatawan
|
614
|
+
hayop.browny
|
615
|
+
=> 'si browny ay mabait!'
|
616
|
+
```
|
477
617
|
|
478
618
|
### nakatukoy?
|
479
619
|
|
480
|
-
Ang nakatukoy? ay ginagamit kung kailangan malaman kung umiiral ang isang grupo
|
620
|
+
Ang nakatukoy? ay ginagamit kung kailangan malaman kung umiiral ang isang grupo
|
621
|
+
o klase
|
481
622
|
|
482
|
-
|
483
|
-
|
623
|
+
```ruby
|
624
|
+
nakatukoy?
|
625
|
+
nakasaad?
|
626
|
+
```
|
484
627
|
|
485
628
|
Halimbawa
|
486
629
|
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
wakas
|
630
|
+
```ruby
|
631
|
+
grupo Manggagawa
|
632
|
+
bilang Magsasaka
|
633
|
+
ang pananim
|
634
|
+
['sibuyas', 'kamatis', 'palay', 'mais'].isaisahin na_ganito |pananim|
|
635
|
+
mag_print "Mag tatanim ng #{pananim} ngayong panahon"
|
494
636
|
wakas
|
495
637
|
wakas
|
638
|
+
wakas
|
639
|
+
wakas
|
496
640
|
|
497
|
-
|
498
|
-
|
499
|
-
|
641
|
+
kung nakatukoy?(Manggagawa::Magsasaka)
|
642
|
+
mag_print 'May nakatukoy!'
|
643
|
+
wakas
|
644
|
+
```
|
500
645
|
|
501
646
|
### tanggalin
|
502
647
|
|
503
648
|
Ginagamit ang tanggalin kung may tatanggaling panuntunan sa isang klase
|
504
649
|
|
505
|
-
|
506
|
-
|
650
|
+
```ruby
|
651
|
+
tanggalin
|
652
|
+
magtanggal
|
653
|
+
```
|
507
654
|
|
508
655
|
Halimbawa
|
509
656
|
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
wakas
|
657
|
+
```ruby
|
658
|
+
grupo Hayop
|
659
|
+
bilang Aso
|
660
|
+
ang tahol
|
661
|
+
mag_print 'baw waw!'
|
516
662
|
wakas
|
663
|
+
wakas
|
664
|
+
wakas
|
517
665
|
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
666
|
+
bilang Pusa < Hayop::Aso
|
667
|
+
tanggalin tahol
|
668
|
+
ang meow
|
669
|
+
mag_print 'meow wahu!'
|
670
|
+
wakas
|
671
|
+
wakas
|
524
672
|
|
525
|
-
|
673
|
+
pusa = Pusa.kumatawan
|
526
674
|
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
675
|
+
simulan
|
676
|
+
pusa.tahol
|
677
|
+
agapan => pagkakamali
|
678
|
+
mag_print "ang pagkakamali ay '#{pagkakamali}'"
|
679
|
+
wakas
|
680
|
+
```
|
532
681
|
|
533
682
|
### ihinto
|
534
683
|
|
535
684
|
Gumamit ng 'hinto' kung may nais kang matapos na kondisyon gamit ang 'habang'
|
536
685
|
|
537
|
-
|
538
|
-
|
686
|
+
```ruby
|
687
|
+
ihinto
|
688
|
+
hinto
|
689
|
+
```
|
539
690
|
|
540
691
|
Halimbawa
|
541
692
|
|
542
|
-
|
693
|
+
```ruby
|
694
|
+
nakamit = mali
|
543
695
|
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
696
|
+
habang nakamit == mali
|
697
|
+
mag_print 'hindi pa nakakamit!'
|
698
|
+
hinto
|
699
|
+
wakas
|
548
700
|
|
549
|
-
|
701
|
+
mag_print 'nakamit na!'
|
702
|
+
```
|
550
703
|
|
551
704
|
### sa
|
552
705
|
|
553
706
|
Ginagamit ang 'sa' kung nais mong matukoy ang kasulukuyang listahan
|
554
707
|
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
708
|
+
```ruby
|
709
|
+
sa
|
710
|
+
sa_loob_ng
|
711
|
+
nasa
|
712
|
+
na_nasa
|
713
|
+
```
|
559
714
|
|
560
715
|
Halimbawa
|
561
716
|
|
@@ -565,9 +720,11 @@ Halimbawa
|
|
565
720
|
|
566
721
|
Ginagamit ang 'ganito' kung nais mong i konteksto ang kasulukuyang listahan
|
567
722
|
|
568
|
-
|
569
|
-
|
570
|
-
|
723
|
+
```ruby
|
724
|
+
na_ganito
|
725
|
+
nang_ganito
|
726
|
+
ganito
|
727
|
+
```
|
571
728
|
|
572
729
|
Halimbawa
|
573
730
|
|
@@ -577,85 +734,120 @@ Halimbawa
|
|
577
734
|
|
578
735
|
Ang 'hanggang' ay magpapatuloy tumakbo hanggang maabot ang tamang kundisyon.
|
579
736
|
|
580
|
-
|
581
|
-
|
582
|
-
|
737
|
+
```ruby
|
738
|
+
hanggang
|
739
|
+
hanggang_ang
|
740
|
+
mapa_hanggang
|
741
|
+
```
|
583
742
|
|
584
743
|
Halimbawa
|
585
744
|
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
745
|
+
```ruby
|
746
|
+
pambilang = 0
|
747
|
+
panghuling_numero = 5
|
748
|
+
simula
|
749
|
+
mag_print "Ang numero ay #{pambilang} na"
|
750
|
+
pambilang += 1
|
751
|
+
wakas hanggang pambilang < panghuling_numero
|
752
|
+
```
|
592
753
|
|
593
754
|
### maliban_na
|
594
755
|
|
595
|
-
|
596
|
-
|
597
|
-
|
756
|
+
```ruby
|
757
|
+
malibang
|
758
|
+
maliban_na
|
759
|
+
maliban_ang
|
760
|
+
```
|
598
761
|
|
599
762
|
Halimbawa
|
600
763
|
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
764
|
+
```ruby
|
765
|
+
mga_persona = [
|
766
|
+
{ pangalan: 'Gener', kasarian: 'lalaki' },
|
767
|
+
{ pangalan: 'Karmen', kasarian: 'babae' }
|
768
|
+
]
|
769
|
+
|
770
|
+
mga_persona.isaisahin ng_ganito |tao|
|
771
|
+
malibang tao[:kasarian] == 'lalaki'
|
772
|
+
mag_print "si #{tao[:pangalan]} ay babae!"
|
773
|
+
maliban_dito
|
774
|
+
mag_print "si #{tao[:pangalan]} ay lalaki!"
|
775
|
+
wakas
|
776
|
+
wakas
|
777
|
+
```
|
613
778
|
|
614
779
|
### o
|
615
780
|
|
616
781
|
Ang 'o' ay ginagamit upang piliin ang nagsasauli ng tama.
|
617
782
|
|
618
|
-
|
619
|
-
|
783
|
+
```ruby
|
784
|
+
o
|
785
|
+
o_ang
|
786
|
+
```
|
620
787
|
|
621
788
|
Halimbawa
|
622
789
|
|
623
|
-
|
624
|
-
|
790
|
+
```ruby
|
791
|
+
totoo o mali
|
792
|
+
=> totoo
|
793
|
+
```
|
625
794
|
|
626
795
|
### katangian
|
627
796
|
|
628
|
-
Ang 'katangian' ay ginagamit upang makapag takda at makapag basa ng *value* sa
|
797
|
+
Ang 'katangian' ay ginagamit upang makapag takda at makapag basa ng *value* sa
|
798
|
+
katangian na ipinahayag sa loob ng grupo.
|
629
799
|
|
630
|
-
|
631
|
-
|
800
|
+
```ruby
|
801
|
+
katangian
|
802
|
+
panguri
|
803
|
+
```
|
632
804
|
|
633
805
|
Halimbawa
|
634
806
|
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
ang magpakilala
|
639
|
-
mag_print <<-INTRO
|
640
|
-
Ako ay isang Robot!
|
641
|
-
Ang pangalan ko ay "#{sariling.pangalan}"
|
642
|
-
Ako ay may kakayahang mag "#{sariling.kakayahan}"
|
643
|
-
INTRO
|
644
|
-
wakas
|
645
|
-
wakas
|
646
|
-
|
647
|
-
robot = Robot.gumawa
|
648
|
-
robot.pangalan = "bot-chukoy"
|
649
|
-
robot.kakayahan = "tambling"
|
650
|
-
robot.magpakilala
|
807
|
+
```ruby
|
808
|
+
bilang Robot
|
809
|
+
katangian :pangalan, :kakayahan
|
651
810
|
|
652
|
-
|
811
|
+
ang magpakilala
|
812
|
+
mag_print <<-INTRO
|
813
|
+
Ako ay isang Robot!
|
814
|
+
Ang pangalan ko ay "#{sariling.pangalan}"
|
815
|
+
Ako ay may kakayahang mag "#{sariling.kakayahan}"
|
816
|
+
INTRO
|
817
|
+
wakas
|
818
|
+
wakas
|
653
819
|
|
654
|
-
|
820
|
+
robot = Robot.gumawa
|
821
|
+
robot.pangalan = "bot-chukoy"
|
822
|
+
robot.kakayahan = "tambling"
|
823
|
+
robot.magpakilala
|
824
|
+
```
|
655
825
|
|
656
|
-
|
826
|
+
### ulit-ulitin
|
657
827
|
|
658
|
-
|
828
|
+
Ang 'ulit-ulitin' ay ginagamit upang paikot-ikutin ang ekspresyon hanggang
|
829
|
+
ihinto ito kapag natupad ang isang kondisyon.
|
830
|
+
|
831
|
+
```ruby
|
832
|
+
paulit_ulit
|
833
|
+
ulit_ulitin
|
834
|
+
```
|
835
|
+
|
836
|
+
Halimbawa
|
837
|
+
|
838
|
+
```ruby
|
839
|
+
pambilang = 0
|
840
|
+
|
841
|
+
paulit_ulit na_ganito
|
842
|
+
ihinto kapag_ang pambilang == 10
|
843
|
+
mag_print pambilang
|
844
|
+
pambilang += 1
|
845
|
+
wakas
|
846
|
+
```
|
847
|
+
|
848
|
+
## Pagtulong sa pagdedevelop ng Bato
|
849
|
+
|
850
|
+
Magpadala ng mga kahilingan sa paggawa ng ticket.
|
659
851
|
|
660
852
|
## Lisensya
|
661
853
|
|