どうしてプログラマに・・・
- カテゴリ:
- ウェブ・技術
この記事が結構話題みたいです。
読むのが面倒な人のために解説すると、こんな感じ。
プログラマを雇うにあたり、応募者に実際にプログラムを書いてもらうテストをしてみました。単純なテストです。ところがそのプログラムを書ける人は驚くほど少ない、というもの。ちなみにその問題とはこれ。
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。
私はプログラマではないのですが、シェルスクリプトを教えていることもあり作ってみました。するとちゃんと出来ました…。当たり前か。でも2分ではとても無理です。
#!/bin/sh
count=1
tf=`expr 3 \* 5`
while [ $count -le 100 ]
do
if [ `expr $count % $tf` -eq 0 ]
then echo "FizzBuzz"
else if [ `expr $count % 5` -eq 0 ]
then echo "Buzz"
else if [ `expr $count % 3` -eq 0 ]
then echo "Fizz"
else echo $count
fi
fi
fi
count=`expr $count + 1`
done
いやまぁ洗練されていないプログラムですが、とりあえず動きます。で、はてなブックマークを見ると大変参考になるプログラムが載っています。例えばこんなのとか。
seq 100|perl -ple '$_=($_%3?"":Fizz).($_%5?"":Buzz)||$_'
頭を使えば1行で出来てしまうのですよ!実行速度も全然違う。
ということでプログラムは楽しいね、というお話でした。
コメント