ヤクとアヒル

日常の問題を解決したときにつけるログ

ハーディ・ラマヌジャン数を求めるプログラム

伊庭斉志:『Cによる探索プログラミング』をやっている

買ったのは結構前なのだが,昨日,レポートからの逃避で少しめくり,次の練習問題を解いたのでソースをのせる.使わないと言語は上達しないと言われたので触ってみたのだった.全然スマートじゃないコードがw

この本のまえがきを拝借して,ちょっと内容を紹介すると(C言語の)「基本的な使い方を知ったなら,実践をしながら慣れ親しむのがいいでしょう」とあり,「C言語の初歩を終えた人に向けて,その後の学習を促すような構成となって」いるらしい.

本書の内容は東大工学部電気系2,3回生向けの著者の授業が元になっていて,その授業で「課題として扱うのは,数学問題,パズル,ゲーム,シミュレーション,Lisp,自己増殖,遺伝的アルゴリズムなど」であるらしい.アルゴリズムの前提知識は必要としていない.ミレニアム問題や最新の研究につながるテーマを含んで見るようだ.まあなので本書もだいたいそんな内容なんじゃないんですかね?(ここまで書いといてそれかよ)

パラ見する限り,パズルとか数学好きなら楽しめそう.個人的な感覚としては一つ一つがわりと重そうなので一冊読み通すならちゃんと腰を据えないとなと言う感じ.でも取っ付き易くはあるので,文法はだいたいわかったけど何すりゃいいんじゃーい!という人にはいいのかも.僕もそんなんの一人です.目次はこちらオーム社HP).

書いたプログラム

ハーディーが病気療養中のインドの天才数学者ラマヌジャンを見舞ったとき,次のような会話が交わされたそうです.
ハーディ「今日乗ってきたタクシーのナンバー( 4 桁の自然数)はつまらない番号だったよ」
ラマヌジャン「いえそんなことはありませんよ.それは 2 つの数の立方(3 乗)の和として表す表し方が 2 通りある最小の数です」
(p.11,練習問題 1-3)

実行結果

おまけ


次の,2数の立方の和での表現法が2つある数は3じゃありません!4104です!(シャロ

Cによる探索プログラミング―基礎から遺伝的アルゴリズムまで

Cによる探索プログラミング―基礎から遺伝的アルゴリズムまで

スポンサーリンク