安藤友晴@北海道のてっぺん このページをアンテナに追加 RSSフィード

2009-04-20

Code Golf大会 in 安藤ゼミ (挑戦者求む)

きょうはゼミ室でCode Golf大会です。Code Golfとは、あるお題を満たすプログラムを書き、より短いバイト数で書けた人が勝ち、というお遊びです。Golfですから。

お遊びなんですが、楽しみながらもプログラミングの基礎体力をつけることができます。短く書かなければならないので、APIドキュメントを読みこなす能力も必須です。ゼミ室では過去に5〜6回ほどCode Golfをやっていますが、上級者は新しい言語を覚えて、その言語で参戦するというのが流行っていて、これもよい傾向です。

ここ数回では、こんなプログラミング言語が使われています。

過去の経験では、RubyPerlがとても強いです。その一方で、Javaはとても弱いです(笑)。"Hello, world" 出力するのにどれだけ使うんだよ、Java

ちなみに、今回は主として2年生向けなので、軽めの課題です。お暇な方はどうぞ。

問題1: abrakadabra

アブラカダブラの呪文を出力せよ。出力例は以下のとおり。

abrakadabra
brakadabra
rakadabra
akadabra
kadabra
adabra
dabra
abra
bra
ra
a

問題2: 素数を数えて落ち着くんだ

2から任意の数までの中でランダムに5個素数を表示し合計も出す。 5個の中に重複した素数があってもよい。今回は100まで。プログラム中に100という数を書いていいが、1箇所の値を変えれば他の数にも対応できるようでなくてはならない。出力例は以下のとおり。

61,71,2,17,71
222

では、お楽しみください。

pooqpooq 2009/05/04 13:45 code golfという文字に誘われてきました。
J言語でやってみました。
問題1
wd@><\.'abrakadabra'
問題2
wd@>((,','&,)&":/;":&(+/))(?5##b){b=.(#~n&>)p:i.n=.100

atomoharuatomoharu 2009/05/05 00:38 pooqさん、コメントありがとうございます。J言語は、以前うちのスタッフだった人が試していて、コードゴルフでは非常に有利でした。それにしても短いですよね。がんばって解読してみようと思います。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証