僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
dc(1)に整数を与えると、fizzかbuzzかfizzbuzzか元の数かを返す
スクリプトがとりあえず。
アルゴリズム自体は普通のif(割り算)...elseif(割り算)..else。
$ for num in `seq 17` > do echo $num | > dc -f macro.txt > done 1 2 fizz 4 buzz fizz 7 8 fizz buzz 11 fizz 13 14 fizzbuzz 16 17
ifに相当するものはあったけど、elseをどうしていいか少し迷った。
15,5,3のどれかが真になったあと、比較対象のゼロ(0レジスタの中身)
を-1に変えて、
それ以後が真にならないようにする。
整数出力は0レジスタの中身が0である場合のみ実行するようにする。
自前でループを実行できるようにもせねば。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。