ここでは,次の例題に関するプログラムの例を示します. このプログラムでは,配列と繰り返しを利用していません. このプログラムは,あくまでも参考のためのもので,実際にはこのようなプログラムは書きません.
ある金額(円)を硬貨(1円,5円,10円,50円,100円,500円)でおつりがないように支払うとき,
何円玉を何枚出せばよいかを調べる.
プログラム
例題のプログラムの仕様に書いてある通りに, 愚直に処理を行っています. じつは仕様自体,配列と繰り返しのありがたみを強調するために, わざと繰り返しの部分を一つ一つ書き下しています.
1
2 # 支払う金額を取得する
3 print "おつりがないように硬貨で支払いを行います\n"
4 print "支払う金額(円)を入力して下さい: "
5 amount = gets.to_i
6
7 # 金額が0円以下の場合は,エラーメッセージを表示して終了する
8 if(amount <= 0)
9 print "1円以上を指定して下さい\n"
10 exit # プログラムを終了させる
11 end
12
13 ### 各硬貨の支払い枚数の計算と結果の表示
14 print amount,"円は,"
15 rest = amount
16
17 # 500円の支払い枚数の計算と表示
18 if rest >= 500
19 n = rest/500
20 print "500円",n,"枚 "
21 rest = rest - n*500
22 end
23
24 # 100円の支払い枚数の計算と表示
25 if rest >= 100
26 n = rest/100
27 print "100円",n,"枚 "
28 rest = rest - n*100
29 end
30
31 # 50円の支払い枚数の計算と表示
32 if rest >= 50
33 n = rest/50
34 print "50円",n,"枚 "
35 rest = rest - n*50
36 end
37
38 # 10円の支払い枚数の計算と表示
39 if rest >= 10
40 n = rest/10
41 print "10円",n,"枚 "
42 rest = rest - n*10
43 end
44
45 # 5円の支払い枚数の計算と表示
46 if rest >= 5
47 n = rest/5
48 print "5円",n,"枚 "
49 rest = rest - n*5
50 end
51
52 # 1円の支払い枚数の計算と表示(残額そのもの)
53 print "1円",rest,"枚 "
54
55 print "で支払えます\n"
56