c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programming に分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡)

音樂は SoundCloud に公開中です。

考察は現在は主に Scrapbox で公表中です。

Programming は GitHub で開發中です。

どうしてプログラマに・・・プログラムが書けないのか?

しらん。


どうしてプログラマに・・・プログラムが書けないのか?
 http://www.aoky.net/articles/jeff_atwood/why_cant_programmers_program.htm

かなりの試行錯誤の末に、コードを書こうともがいている人たちというのは、単に大きな問題に対して苦労しているのではないことがわかった。やや小さな問題(連結リストを実装するというような)に対して苦労するということでさえない。彼らはまったくちっぽけな問題に苦労しているのだ。
それで、そういった類の開発者を見分けるための質問を作り始め、私が「Fizz-Buzz問題」と呼んでいる問題のクラスを考え出した。これはイギリスの学校の子供たちがよくやっている遊び(というかやらされている遊び)にちなんで名付けた。Fizz-Buzz問題の例はこんな感じだ。
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。
ちゃんとしたプログラマであれば、これを実行するプログラムを2分とかからずに紙に書き出せるはずだ。怖い事実を聞きたい? コンピュータサイエンス学科卒業生の過半数にはそれができないのだ。自称上級プログラマが答えを書くのに10-15分もかかっているのを見たこともある。


こわくなったので、Fizz-Buzz問題をやってみた。(JavaScript)

(function(){
  var s = "";
  for(var i=1; i<=100; i++){
    var k = i;
    if(i%3==0 && i%5==0){
      k = "FizzBuzz";
    }else if(i%3==0){
      k = "Fizz";
    }else if(i%5==0){
      k = "Buzz";
    }
    s += k;
  }
  return s;
})();

さすがにできた……。
まぁ簡単ですよね。効率はよくないでしょうが。