2011/11/17

メモ

MinttyからEmacsが使いたい場合、CygwinをインストールするときにMinttyとEmacsを入れるのが早い。MsysからMinttyをインストールすると、どうやってEmacsを起動するのかよくわからん。

2011/11/14

Ubuntu11.04覚書

テキストエディタの英語名はgedit。なのでsudoで起動したければ以下のように書く。
$ sudo gedit

Windows7とVMWareとUbuntu11.04

Windows7のVMWareにUbuntu11.04を入れた。しかしネットにつながらない。
ネットで色々と調べてみると、VMWareのイメージをコピーしたときに同様の問題が発生するらしく、俺のもそれかと思ったが、$sudo lshw -C network の結果はその仮説を否定している。ちゃんと「logical name: eth0」になってる。「logical name: eth2」となっていれば仮説が裏付けられたのだが。

結局、更に色々と探した結果、/etc/network/interfaces の設定がおかしかったという結論に達した。
最初このファイルには以下の内容しか記述されていなかった。

># The loopback network interface
>auto lo
>iface lo inet loopback

なので、以下の文言を追記して再起動したら問題なくネットにつながった。

># The primary network interface
>auto eth0
>iface eth0 inet dhcp

2011/10/11

たけしのコマ大数学科(2011年10月11日放送分)


# たけしのコマ大数学科(2011年10月11日放送分)
# 上2桁と下2桁の和の平方とそれ自身の数が同じ4桁の非負整数を求める

(1000..9999).each{ |n|
str = n.to_s
ab = str[0..1].to_i + str[2..3].to_i
if ab * ab == n
p n
end
}

答えは「2025」「3025」「9801」の3つ。
数学的アプローチとしては「2乗した数の1桁目に表れる数は限られているので、そこから絞り込む」「方程式にして2次方程式の解の公式を用いて解く」。録画しないとやっぱダメだな。

2011/09/23

CppUnitなんとか動きはしたものの・・・




ものすごく無理矢理実行できるようにした感じ。いいのかこれで?

  • Includesに「C:/cpplib/cppunit-1.12.1/include」を追加

  • Librariesに「cppunit」「cppunit.dll」を追加

  • Library Pathsに「C:\cpplib\cppunit-1.12.1\src\cppunit\.libs」を追加

  • 「\cppunit-1.12.1\src\cppunit\.libs\」にある「libcppunit-1-12-1.dll」をパスが通ってるところにコピー

  • ビルドして実行するとポップアップが出るが、強行する旨にチェック入れて続行する



g++のオプションがよくわかってない。Eclipseのオプションの「Includes」が「-I」に、「Libraries」が「-l」に、「Library Paths」が「-L」に対応しているらしい。あと「-l」で指定する対象はlibXXXX.aみたいに接頭辞と拡張子が決まってるらしい。で、「-l」で指定するときはその接頭辞と拡張子を削除した名前を指定する。つまりg++においては「.a」ファイルは命名規則が決まっている。

2011/09/19

CppUnitインストールでエラー(解決)

埒が明かないので、MinGWを再インストールしてからCygwinではなくMinGWのシェルからmakeしたらうまくいったっぽい。
しかしテストの作成はうまくいかない。多分C++の基礎の基礎がわかっていないのが原因だと思う。基礎的な学習を終わらせてから出直した方がいいような気がする。
いつもいつもツールのインストールやパスの設定とかそのあたりが鬼門だ。コードを書くこと自体は大した問題にならないことが多いのだけども。


2011/09/18

CppUnitインストールでエラー

CppUnitインストールしようとしたが、makeでエラーになるな。Cygwin+MinGWでもいけるはずだが? ちょっと調べる。


2011/08/30

2種類のプログラム

人間社会にとって必要欠くべからざるプログラムというのがある。金融系のシステムなどまさにそうだが、それは止まることによって人を不幸にすることはあっても、動くことによって人を幸せにすることはない。一方、人間社会にとってなくてもいいようなプログラムもあって、それは止まっても人を不幸にはしないが、動くことによって人を幸せにする。それはある種の芸術作品のようなものであって、例えば美しいガラス細工は、仮に床に落ちて砕け散っても一瞬人々を悲しませるだけで彼らの生活を根底から脅かしたりはしない。しかし存在し輝きを放つだけで人々を幸せにする。前者のプログラムは、まさに産業機械の歯車そのものであり、それが止まることによって人々は致命的な打撃を受けるが、その鈍い輝きが人を喜ばせることは決してない。

自分が作りたいのが後者のプログラムであり、前者のそれでないということだけは、今はっきりとしている。

2011/08/28

Blogger Syntax Highlighter

ここを参考に「Blogger Syntax Highlighter」を導入した。
これでコードが読みやすくなる。


public static void main(String args[])
{
System.out.println("hoge");
}