「プログラマの数学第2版」を読んで

書籍

プログラマの数学第2版

プログラマの数学第2版

この本を選んだ理由

  • プログラミングに役立つ「数学的な考え方」を身につけよう。というイントロに興味を持ったから。
  • 通勤中に読む上で写経をする必要がなく、リラックスして読める本を探していたから。

所感

「初歩的な」プログラミングに役立つ数学的な考え方が身につく

  • If文、For文、While文など初めてプログラムを学ぼうとする人が事前に読むと理解がスムーズになる本だと思う。
    • 高専で初めてプログラムを学んだ時2年くらいは暗闇を彷徨っていたが、その時この本を渡されていたら少しは早く暗闇から脱出できていたと思う。
  • ただし、基礎が分かっていても言語化する難しさを感じている人は一読する価値はあると思った。
    • プログラムするならこう書くべき!と思っていことが、とても上手に言語化されている。

日常生活のゼロを意識する

  • 本には「薬を3日飲んで1日休むを繰り返すには飲む日か飲まない日かを判断しないといけない。ただ、効果のない薬を用意してルールを毎日飲むというように単純化できる。」という例題があった。
    • この発想はプログラムだけではなく、複雑になりすぎているプロセスについて単純化する際の切り口として日常業務にも使えるなぁ。

-周期性や偶奇性(パリティ)を見抜く

  • 手に負えない数でも周期性を見抜けば取り扱うことができるし、偶奇性を使うことで試行錯誤の回数を減らせる。
    • 物事を詳しく調べる際は正確に把握しようとするが、的確な分類をするほうが役に立つという良い例。
    • 的確な分類。ここが仕事においても肝だと思う。

雑談ネタで使えそうな内容が多い

  • ローマ数字は位取り記数法ではない
    • 今まで気にもしてなかったけど確かにそうだ!ローマ数字だと桁が増え過ぎたら辛い。
  • 植木算
    • 0のことを忘れるな!という有名な問題。0を入れ忘れるあるあるネタを植木算ということは知らなかった。
  • 対角線論法
    • どこで使えるか知らないけど、なるほどなぁー。と思った。

今後

  • 基礎的な本でも新たな気付きを得られる。基礎的な本を読むのも良い!興味持ったらまずは読んでみようと思う。
  • (30過ぎて今更ですが…)本って良いですね。他者がいくら伝えても意味がない。進んで読む気持ちを持たせる工夫が必要だと感じた。