B級科学者もどきの憂鬱

とある理系になりきれない奴のつれづれなる活動記

スポンサーサイト

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

どっかのナベアツ

今日は久しぶりに日記的なことでも。

最近、空き時間に、友人と三人で
FizzBuzzというプログラムを組みました。

ルールはいたって単純。
1から100まで数字を出力します。
ただし、3の倍数でFizz、5の倍数でBuzz、
3と5の倍数でFizzBuzzを、数字の代わりに出力です。

1~10までなら、実行例はこんな感じ。
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz


で、普通に作っても面白くないので、
CodeGolf、つまり、どれだけ短く書けるかをやってみました。
使用言語は三人ともCを選択。

全員が五分ほどで出来、改行などを除いて出来た結果は、
177Byte、168Byte、137Byteでした。
それから、一番短かった人のソースを元に、
何とか100Byteを切れないかと一時間ほど粘りましたが、
残念ながら102Byteで時間切れになりました。

gccではなくVisual C++でやったので、
mainの返り値を省略出来ない等の事情もありましたが、
それでも少し悔しいです。

私は、CodeGolfという競技の存在は知っていましたが、
実際にやったのは初めてでした。
正直思った以上に楽しかったので、
今度また別のテーマでやってみましょうかね。

ちなみに、FizzBuzzのC言語での世界最短は、
今のところ、gccを使っての73バイトのようです。
勝てる気がしない……。

近況とか言い訳とか

最近、とみに忙しくなりました。
油断すると、すぐに意識が夢の世界へと
フライアウェイするぐらい睡眠不足です。

今週は、あまりの眠気にダウンして、
今日までブログを更新できませんでした。すみません。
そんなわけですので、これからしばらくの間も、
更新間隔を一定に保てないかもしれません。

プログラムもちっとも進んでいません。
一応の目標として、来月の初旬までには、
ある程度動くところまで持っていくつもりだったのですが、
今の状況から見るにちょっと厳しそうです。

ただ、別のOSで動作チェックしてみたりはしました。
WIN32APIの挙動、XPとVistaで結構違いますね。
今のところ大きな問題にはならなそうですが、
今後、動作確認は必須にした方がいいかもしれません。

先週、母校の文化祭に行きました。
後輩や旧友とも久しぶりに会えました。
やっぱり参加者として行くと、
展示する側とは全然違う楽しさがありますね。

終わった後は、カラオケに行ったりだとか、
楽しいひと時を過ごせました。

ちなみにこれは、私が忙しくなる直前の話です。
前もってわかってたら、行くにしても早々に切り上げて、
睡眠時間の確保とかそっちに回しますよ……。

書くこと無いので趣味の話でも

この連休は、ずっと家に引き篭ってプログラム作ってました。
それなりには進みましたが、まだまだ終わりが見えません。

というか私、組むのが遅い気がします。
本格的にGUIを組むのは初めてなので、調べることが多いのと、
無駄に動作速度にこだわっているせいですかね。
だって、出来る限りチラツキとか抑えたいじゃないですか。

周りにプログラミング出来る人がいないので、
実際どうなのかはわからないんですけど。
でも、頭の中で組んである仕組みを早く実装したいのに、
別の場所のデバッグしている時はもどかしいです。

とりあえず今回はQtとか使わない予定ですが、
一段落付いたら勉強してみるのもいいかもしれません。

でも多分、自分用の一回こっきりのプログラムはともかく、
ネット上での公開を最終目標にした物は、
これからもやっぱりWIN32APIで書く気がします。
動作が速いのは正義です。

そういえばこの前、恋愛小説を読んでいたら、
キャラに合わないと言われました。
どうも私は、SFとか推理小説のイメージらしいです。

基本的にどのジャンルもそれなりに読みますけど、
私が一番好きなのはファンタジーです。
ミヒャエル・エンデは個人的最高峰の作家です。

ラノベは最近、友人に貸し出されたので読んでいます。
ライトだけあって、電車の中でも気楽に読めますね。
少し前に、『ゲーデル、エッシャー、バッハ あるいは不思議の環』を
同じように読もうとしたら、腕がつりそうになりました。
あれは家で机に座って読むべきです(アタリマエ)。

そんなわけで、読書とプログラミングは私の趣味です。
他にもありますけど、全て『頑張ればタダで出来る事』です。
お金ないですし!

有用な面も多分にありますけど

『文系の人』と『理系の人』、『有機化学』と『無機化学』など、
完全に分離できないが便宜上使われる分類というのは、
世の中に結構色々ありますよね。

教育目的などで有用な面がかなり存在するのは認めますが、
個人的には、例えどんなものであろうと、
どこに入るのか厳密に判定できない対象が存在する分類は、
学問的にはあまり意味は無いと思います。

例えばさっき例に上げた『文系の人』と『理系の人』を、
『直感的思考優位の人』と『論理的思考優位の人』
と仮に定義してみます(曖昧な部分は残っていますが)。

私は自分のことを、『直感で考えて論理で表現する人』
だと思っています(実際どうかはわかりません)。
となると、私は理系と文系どちらなのでしょうか。
周囲の人間には理系だと思われていますけど。

定義を自分で決めたのでずるいと言われるかもしれませんが、
完全に分離できない分類というものの例にはなると思います。
まぁ、厳密に定義しても仕方のない部分もありますけど、
それだと学問には成り得ないですよね。

偶数と基数のように、スパッと完全に分ける分類は
それなりに考案が難しいものですが、
本当に学問的に意味のある分類を作りたければ、
やはり境界要素は存在しない方が望ましいと思います。

それに分類というのは、言ってみれば、
多数の集団から共通要素を持つもの同士で集めたものなので、
見方によれば個性を潰しているわけです。

最近どうも、人を数個の特徴から適当な型に当てはめて、
全部分かった気になっている人が多い気がします。
実際見えているのはごく一部でしか無いにもかかわらず、です。

分類自体は決して悪いことでは無いと思いますが、
それが本当に意味のある分類なのか、少し立ち止まって
考えてみてもいいんじゃないかと思います。


下はコメントへの返信です。

>>bagabaさん
私も数学では似たような感じですw

プログラムは、個人的な美的感覚に基づいて書き方を決めるよりも、
ヒューマンエラーを防げるよう工夫された書き方をする方が、
私としてはより良いコードだと思うのですけどね。

でも探索って楽しいですよね

今日は久しぶりに考察ネタを
書こうと思っていたんですが、
色々必要な図を書いてたら、
いつの間にかこんな時間になってました。

ので、それはまたの機会にして、
今回もまたいつものように、
日常の事を適当に書いていきます。

TIPSエンジンを改良しようと色々やっていたら、
理論的な課題が次々と出てきました。
苦労してやっと一つ解決したと思ったら、
もっと難しい課題が待ち構えてやがります。

厄介なのは、それが解決できるかは
誰にもわからないっていうところです。
それに、仮に数式上で上手く行っても、
実際の処理で上手くいくとは限りません。
この辺は、いかにも工学らしいですね。

そういえば、私って何系の人間なんでしょうか。
一応自分では、文系思考の理系だと思っています。
理系学問はもちろん、文系学問も決して嫌いじゃありません。
学校の授業は例え数学であろうと嫌いでしたが。
だって押し付けしか無かったですし。

まぁやってることは基本的に、
理系っぽいことがほとんどなのですが、
別に読む小説はSFやミステリーだけというわけではなく、
むしろファンタジーの方が好きな人間です。

色々言いましたけど、個人的には、
自分が何系の人間かなんて、結構どうでもいいです。
結局のところ、私はScientistB系以外の何物でもないですからね。

FC2Ad

まとめ

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