バイリンガルFizzBuzz

アバター
h2so5
副管理人
記事: 2212
登録日時: 14年前
住所: 東京
連絡を取る:

バイリンガルFizzBuzz

投稿記事 by h2so5 » 12年前

適当に作ってみた。
次のコードはRubyでもC言語でも実行でき、同じ出力をする。
C言語のプリプロセッサがRubyではコメントとして扱われるのがポイント。

CODE:

#include 
 
#define END int main(int i)
#define do {
#define end } return 0;
#define $i i
 
END {
    $i = 1;
    while ($i <= 100) do
        ($i % 15 == 0) ? printf("Fizz Buzz\n") : (($i % 3 == 0) ? printf("Fizz\n") : (($i % 5 == 0) ? printf("Buzz\n") : printf("%d\n", $i)));
        $i += 1;
    end
}
最後に編集したユーザー h2so5 on 2013年2月04日(月) 21:21 [ 編集 2 回目 ]

アバター
GRAM
記事: 164
登録日時: 14年前

Re: バイリンガルFizzBuzz

投稿記事 by GRAM » 12年前

これは面白いw

sozai
記事: 57
登録日時: 12年前

Re: バイリンガルFizzBuzz

投稿記事 by sozai » 12年前

こんなことが出来るとは...