風つかいです。
>[お題]簡易足し算器
>[内容]入力された数字を合計し、表示する。
> 0が入力されるまで数字を受け付け、合計し続ける。
> 0が入力されるとそれまでの合計を表示する。
大部前の話題ですが、Icon版を考えてみました。
素直に書くと次のようになります。
-----^ ADD01.ICN ( date:02-05-06 time:00:22 ) --------------<cut here
####################
# 簡易足し算器 Icon版1
####################
# add01.icn Rev.1.0 2002/05/06 windy 風つかい H.S.
# Usage : add01 # 数字+改行入力、0+改行を入力すると総和を出力
# This file is in the public domain.
procedure main()
sum := 0 # 総和初期化
while line := read() do { # (標準入力から)入力を読み込んで
if line == "0" then break # "0"ならばループを抜ける
else sum +:= numeric(line) # そうでなければ、数値変換し足し込む
}
write("Total = ",sum) # 総和を出力
end
-----$ ADD01.ICN ( lines:14 words:62 ) ---------------------<cut here
もっと短くしようとすると、こんな風かな。
-----^ ADD02.ICN ( date:02-05-06 time:00:22 ) --------------<cut here
####################
# 簡易足し算器 Icon版2
####################
# add02.icn Rev.1.0 2002/05/06 windy 風つかい H.S.
# Usage : add02 # 数字+改行入力、0+改行を入力すると総和を出力
# This file is in the public domain.
procedure main()
sum := 0 # 総和を初期化
while sum +:= numeric(("0" ~== read()))
# ↑数値変換して足す ↑読み込んだ値が 0でなければ
write("Total = ",sum) # 総和を出力
end
-----$ ADD02.ICN ( lines:12 words:49 ) ---------------------<cut here
風つかい(hshinoh@...)
IconのWWWは、 http://www.cs.arizona.edu/icon/
UniconのWWWは、http://unicon.sourceforge.net/index.html
BGM: 色彩のブルース/EGO-WRAPPIN'