パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

雑記 : FizzBuzz」記事へのコメント

  • そのコードをベースにいじってみました。(85文字)
    int i;main(){for(;i++<100;)printf(i%5?i%3?"%d\n":"Fizz\n":"FizzBuzz\n"+(i%3?4:0),i);}
    さらにいじってたらこんなコードに。むしろ長くなったけど、なかなか分かりにくい代物になったのでネタで紹介。(92文字)
    f(int n){n&&printf(n%5?n%3?"%d\n":"Fizz\n":"FizzBuzz\n"+!!(n%3)*4,n,f(n-1));}main(){f(100);}
    !!(n%3)*4は素直(?)な(n%3?4:0)と文字数が変わらないけど、ここまできたら分かりにくさ優先で。
    f(int n)は単にf(n)とするとnがintになってくれるかと思ってたけど、C99的にはf(n)int n;{...}と、nの宣言をしなければならず、かえって長くなりました。
    C89ではどうだったかなぁ。まあ、宣言不要だとしても全体で88文字。Endowzさんの例と変わらないわけですが。
    --
    巧妙に潜伏したバグは心霊現象と区別が付かない。

日々是ハック也 -- あるハードコアバイナリアン

処理中...