読者です 読者をやめる 読者になる 読者になる

初代Masteries

きっとモヒカンにもなれないお前たちに告げる!!!

Project Euler - Problem 1

...就職活動が始まって以来, 「コードを書く日」と「書かない日」の差がありすぎてヤバイ*1ので, 「どんなに忙しくても2日に1回くらいは, どんなコードでもいいので20分〜30分くらいコーディングをしよう!」と決意しました.
もちろん, 毎日毎日「なんか書こう!」という思ってはいるのですが, 1日中ぐるぐるぐるぐる就活で動き回った後だと, 「重たい」コード(課題)に手を出しにくいんですよね...
更にその分, 就活のない土日とかの休みの日にドバーっと作業をしてしまって, ますます「書く日」と「書かない日」の差が出てしまう... という悪循環.

というわけで, 「忙しい日や疲れた日でもチャレンジできる, そこそこ軽いプログラミングの問題」がないかなあ? とtwitterで聞いてみたところ...


@さんに, Project Eulerというのを教えてもらいました.
Project Eulerは, いわゆる数学の問題集です. 特に序盤の問題は, 結構簡単そうなモノが多いので, 就活で忙しくてもなんとかチャレンジできそうです.
問題は英語で書かれているのがネックなのですが, 日本語訳もあるので安心です.
問題は400問近くあるので, しばらくネタ切れに困る必要もないでしょう.

...というわけで, これから毎週月・水・金くらいに, Project Eulerの問題をPerlで解いてみようと思います.
研究だったりでコーディングをした日はやらなくてもいいかなー... と思ったのですが, 息抜きになるでしょうし, 何より「習慣づける」ことが大事だと思うので, そういう日を含めてやっていくつもりです.

Problem 1

use strict;
use warnings;

my $sum;
for (1..999) {
    if ($_ % 3 == 0 || $_ % 5 == 0) {
        $sum += $_;
    }
}

print "answer: $sum\n";

とりあえず馬鹿正直に実装してみた感じですね.
「こう書けばもっと読みやすいよ!」等々, アドバイスがあれば是非是非よろしくお願いいたします!

*1:コードを書く日は朝から晩まで書いてるけど, 忙しい日とかは1行もコード書かなかったりする...