Upload
junichi-ito
View
49.900
Download
4
Embed Size (px)
DESCRIPTION
http://d.hatena.ne.jp/JunichiIto/20111007/1317976730
Citation preview
2011/10/6 Group Meeting
今日やること
第1回プログラミングコンテスト
ええっっっ!?w(゚ロ゚)w
社内最強のプログラマを決定します!
形式:提示された仕様を充たすプログラムを
書いてください。
問題は1問。制限時間は30分。
たとえばこんな感じ。
Hello World問題(制限時間30分)
• 仕様– 引数で与えられた人名に対してあいさつをする
– 引数がなければ、”Hello, World!”とあいさつする
• 引数– [0]=人名(省略可)
• 実行例– [0]=John
→Hello, John!
– [0]=(省略)→Hello, World!
実行例とサンプルコード(C#)
言語はC#またはPerl。どちらも苦手という人は挙手!
回答が終わったら手を挙げる。それ以降、コードの変更はできない。
ググって良し。ただし、メインロジックは自分で考える。
評価方法
みんなの前で動作確認&ロジックの解説をする。制限時間は5分。
各自で自分が良いと思ったプログラマ3人を選ぶ。理由付きで。
自分で自分に投票してもいいよ!
1位:3点、2位:2点、3位:1点。合計得点が多い人が優勝!
ちなみにマネージャーも投票します!!
私は出題者なので評価対象外。でもプログラミング&投票はします♪
なお、速く回答できた上位3名にはボーナスとして3点をプレゼント!
ところで優勝すると何かくれるんですか、マネージャー?
ちょっと遅くなりましたが、このコンテストの目的を説明します。
プログラミングコンテストの目的
• 自分のスキルを相対的に評価する。– 課題が同じなので相対的な評価が可能。– 実務では同じ課題に同時に取り組むことはない。
• 他人のロジックから新しい発見を得る。– 良いコード、悪いコード(?)に関する知識を深める。
• 良い意味でメンバー内の競争心をあおる。– チームワークがいい = みんな同じスキル、ではない。– 負けたくない、一番になりたいという気持ちも大事!
ここまで何か質問ある?
では全員戦闘態勢に付けっ!
よういドン!でコードが書ける状態にせよ
では始めますよ。
よおおおおお~~~~~い・・・
ドン!
Fizz Buzz問題(制限時間30分)
• 仕様– 1から順番に数を表示する
– その数が3で割り切れるなら"Fizz“
– 5で割り切れるなら"Buzz“
– 両方で割り切れるなら"FizzBuzz"と表示する
• 引数– [0]=終端の値
• 実行例– [0]=16
→1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16
– 実際にはスペースではなく、改行して区切る
はい、それまで!!
動作確認&説明タイム
説明する人
• 動作確認– こちらが提示する引数を与えて実行してください。
• プログラムの説明– どんなロジックで書いたのか説明してください。
– 何かアピールポイントがあればそれも説明してください。
• 制限時間は5分です。– オーバーしたら打ち切ります。
• 私は最後に説明します。
評価する人
• 良いと思ったプログラマ3人を選んでください。
–投票用紙を配ります。
• 3人に順位を付けてください。
• どういう点が良いと思ったのか理由を付けてください。
• 自分=最強、それもアリです。
• 時間があまりないので質問は原則無しとします。
• 私は評価対象外です。
評価ポイント
• バグが無いか?• 読みやすいか?
– インデント、変数名、関数名、コメント、etc
• 保守しやすいか?– コードの重複が無い、変更に強い、etc
• 実行効率が良いか?– 実行速度が速い、メモリの使用量が少ない、etc
• 異常系入力を考慮しているか?– 変な落ち方をしないか?
• その他、あなたの感性で。
あ、解説中に自分のコード書きなおしちゃダメですよ!
では最初の方、どうぞ~~。
テストパターン
• 正常系– 1, 3, 5, 15, 100
• 異常系–引数の数なし、引数2個
– 0, -1 (ゼロまたはマイナス)
– フォーマット異常• 10.5, 0x12 (実数、16進数)
• 全角の10
• abc, #%$
投票タイム
評価する人(再)
• 良いと思ったプログラマ3人を選んでください。
–投票用紙を配ります。
• 3人に順位を付けてください。
• どういう点が良いと思ったのか理由を付けてください。
• 自分=最強、それもアリです。
• 時間があまりないので質問は原則無しとします。
• 私は評価対象外です。
では開票しましょう。
優勝したxxxさん、おめでとう~!!\(^O^)/
お楽しみいただけましたか?
それでは第2回プログラミングコンテストでお会いしましょう~!
完