スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--/--/-- | スポンサー広告  TOP

FizzBuzzの問題。

新入社員の人も入社して二ヶ月、早いところではそろそろ仕事に取り掛かる時期ですね。学生さんもプログラム系の授業が本格化する時期。
そこで、プロであれアマであれ、プログラマであれば簡単に書けるはずのFizzBuzzの問題。
最低限のプログラマの能力を測る指針として利用できるのでお試しいただきたい。

問題の仕様は以下の通り。

・1から100までの数を表示するプログラムを書く事。
・ただし3の倍数のときは数の代わりに「Fizz」と表示する。
・5の倍数のときは「Buzz」と表示する。
・3と5両方の倍数の場合には「FizzBuzz」と表示する。

プログラマと名のる以上は、見た瞬間に頭にコードが浮かび、2分以内で書き出せるはず。
10分以上掛かるなら、プログラマとして研鑽不足。文法書を見るのは問題外。
フローさえ浮かばない場合は、プログラマとしてのブレイクスルーに達していないので、練習書に立ち返るか、親切な先輩や同僚、先生、友達に教えを受けよう。

回答は続きを読むで!

答えの例としてC言語の場合。

main ()
{
 int count;
 int flags;
 for( count=1 ; count<=100 ; count++ ) {
  flags=0;
  if( (count%3)==0 ) {
   flags+= 3;
  }
  if( (count%5)==0 ) {
   flags+= 5;
  }
  switch( flags ) {
  case 0:
   printf( "%d\n", count );
   break;
  case 3:
   printf( "Fizz\n" );
   break;
  case 5:
   printf( "Buzz\n" );
   break;
  case 8:
   printf( "FizzBuzz\n" );
   break;
  }
 }
}

これが唯一の答えでもありませんし、他にも書きようが色々とあります。
ぜひ、一度挑戦してみてください。

問題を発展させて、世界のナベアツバージョンとか作ると面白いかも。

2008/05/28 | プログラミングCOMMENT(0)TRACKBACK(0)  TOP

コメント

コメントの投稿



管理者にだけ表示を許可する

 | BLOG TOP | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。