疲れたので、日記書く気無し。
ついつい、プログラミングに夢中になって10時を越してしまった。
とりあえず、今日は実行速度の最適化を図るために、いろいろといじって、
なんとか、描画速度を1秒以下に抑えることに完了。
以前までは、10秒とか1分30秒とかかかってたんだけどね。
まぁ、そろそろ課題やら無いと死ぬのでここらへんで。
ということで、日記は縮小。
いつもと同じだとか、どうせ、さっきまで2時間パソコンやってたんだろ、
とか、そんなことはありえるので気にしないでください。
まず、今日は何故か後頭部が頭痛に見舞われて、一日中痛かった。
その結果、帰りのSTの記憶がほとんど無く、帰路に関しては、
ほとんど意識がもうろうとしていて、コンタクトレンズで目はかすみ、
目をこすっていたら、危うくコンタクトレンズを落としそうになった。
仕方が無いから、家に帰ってからは1時間ほど寝た。
これがこうをそうしたようで、目覚めたときには頭痛はほとんど無くなっていた。
そして、先ほど。
現在手がけているプログラムのソースコードの書き直しをしていたところ、
特に、コンパイラを起動したとか、そんなことはやってないのに、
「問題が発生ししたため、Microsoft Development Environmentを終了します。
ご不便をおかけして申し訳ありません。」
無常にも、「作業途中であった場合、その情報は失われた可能性があります。」
いやぁ、なんというか、これ見たときかなりびっくりしましたよ。
しかも、不幸なことに、ソースコードの書き直しということもあって、
保存せずに作業を行っていたので、それまでの作業はほとんど消えました。。。
なんというか、本来なら、OSが逝く前に助けてくれてありがとう、
とでも言うべきなんだろうが、このときばかりは、こんな立派な
ダイアログ出すぐらいだったら、保存してくれ、、、という思いでした。
まぁ、それから30分ほどかかって、再度書き直しましたが。
明日はいろいろとあるので寝ます。
現在、U20プログラミングコンテストに提出するものを
決めるための資料をPower Pointで作成中。
しかし、こういうのを書いてて思うのが、
日本語がうまく書けないなぁ、ということ。
なんとか、相手に伝わればいいのだが。
とりあえず、期限は今日の午後8時までなので、あと10時間ほど。
がんばって完成させよう。
ということで、今日は朝学校に行くときに、途中で自転車がパンクして、
何とか学校まで行って、帰りは自転車を押しながら走って家まで何とか帰ってきました。
もうね、ほんと馬鹿かと。
結局、帰ってきた足でそのまま自転車屋さんに行っても開いてなかったし、
おそらく、タイヤの中はダメになっちゃってるような気がするし、
なんか、走って帰ってきた意味ってあったのかなぁ、と思ってしまう。
さて、とりあえず、国語と英語の予習と、数学のワークをやらないとな。
数学のワークは、来週の月曜日までに20ページ、再来週までに、
約100ページほどやらないといけない状況に置かれているので。
(ちなみに、100ページでもまだいいほうです。
先回の範囲を提出してなかったりすると、さらに
これに50ページから80ページほど加算されるはずです。)
かれこれ、3ヶ月ほど前に友人とBeta2は出るのだろうか、
という議論をしていて、いまさら出しても出荷時期が
遅くなるだけという結論に至って、今に至るわけですが、
いつの間にか、Beta2が出てますね、、、
というわけで、もう既に公開開始から2ヶ月たとうとしてるわけですが、
現在サブマシンのほうへVisual C++をインストール中だったりします。
説明見た感じだと、ガーベージコレクションが搭載されるとか、
コード補完機能がついたりとか、よさそうな感じです。
ところで、今見てみたらガーベージコレクションに関する記述が特になかったなぁ。
まぁ、以前見たときにはあったわけですが、とりあえず、放置。
あと、コード補完機能ってあまりにも補完しすぎると蛇足になりかねないだろうなぁ。
まぁ、当たり前だろうけど。
インストーラを見てる感じでは、自分としては結構GUIがいいなぁ、と思いました。
(インストーラ自体のGUIがね。)
あとは、Visual Studio 2005 Beta 2 Go-Live ライセンスがあったりとか。
Visual Studio 2005 Team Suiteがとうとうやってくれた、という感じだったりとか。
Visual Studio 2005 Team Suiteは自分的にはかなり期待大ですな。
さて、最近の日記の内容を見てみると、なんだか、これって
人に見せれるほどまともな文章書いてないよなぁ、とふと思った。
毎日更新することを求めるか、それとも、質を求めるか。
ところで、ふと思ったのだが、そんな価値観は人によりけりだ、と。
そして、これ以降の書く気は(以下省略
明日は補講もなく、ぞんぶんに寝れるわけですが、
デュアルディスプレイも大体設定が整ってきて、
かなりいい調子になってきました。
まぁ、とりあえず、書くこともないので、課題やって寝ます。
友人から安くVGAを譲ってもらい、念願のデュアルディスプレイ環境を構築しました。
まぁ、なんというか、GeForceとRadeonの混在環境なので、最初のうちは不安でしたが、
何とか苦労の末にできました。
そして、現在、右のディスプレイでプロジェクトXを見ながら日記を書いてたりします。
これ、かなりいいねぇ、、、
さっさと寝ます。
まぁ、自分は出ないんだけどね。
この計算は何進法で行われているか。
第一種情報処理技術者試験 平成12年度 午前 問1 より。
さて、現在ソフトウェア開発技術者試験の勉強をしているわけですが、
なんとなく、この問題が印象が残っていたので書いてみました。
一応、自分なりに答えを出して、答えはあってたわけですが、
解き方が本とは少し違うとき方で解きました。
以下答えを。
求める進数をnとする。
それぞれの数を重みをかけた表記に直すとする。
131 = 1 × n^2 + 3 × n + 1
= n^2 + 3n + 1
45 = 4 × n + 5
= 4n + 5
53 = 5 × n + 3
= 5n + 3
これを式にする。
(n^2 + 3n + 1) - (4n + 5) = 5n + 3
n^2 + 3n + 1 - 4n - 5 = 5n + 3
n^2 - 6n - 7 = 0
(n - 7)(n + 1) = 0
n = 7,-1
n > 0なので、答えは7となる。
答え:7進法
これをうまく使えば、テストで計算を間違えても、
「○○進数で解いちゃった」とか言っとけば何とかなるかも(ならないけど
自分は、雨の日でもほとんど、高校まで自転車で通学しているわけですが、
雨の日だと、通常の日の倍近く疲れた感じがします。
高校までは、大体8キロぐらいで、傘差し運転だと危ないので、
合羽来て行くわけですが、合羽の通気性悪くて汗はかくし、
フードの部分が取れやすくて、風であおられたときに直したり、
まぁ、いろいろ面倒なわけです。
なぜか、焼きミスが勃発。
しかも、2台のパソコンの両方ともがミスミスミス、、、
正直のろわれてるのかと真剣に考えましたよ、、、
先週、実力テストの一日目を休んだのも起因して、
追試がたまってまいりました、、、
とりあえず、漢字と地理の地名覚え。
あと、今日教科書を忘れたのが原因で、ある詩を
明日までに全部覚えてこいって言われた、、、
それぐらいだろうか。
あと、補講のワーク×2と英語のプリントと数学の復習とかと・・・
まぁ、多分大丈夫だろう。
おそらく、高校生活で最後の受験となるでしょうが、
あえてソフトウェア開発技術者を受けてみようかと思います。
本来なら、今春の試験で基本情報技術者を受ける予定で、
支払いまで下のですが、数週間前に大会と重なってる
ということに気づいて、結局大会のほうを選んだので受けれませんでした。
まぁ、今から夏休みも含めてがんばれば、何とかなりそうかなぁ。
別に、書いてあることが意味不明とかそういう感じでもなかったし、
二進数あたりが苦手といえば、苦手だけど、なんとかなるでしょう。
さて、これは某タイピングソフトのソースコードの一部なわけですが、
これを見て、何か気づくでしょうか。特に、case 11000:の後ろのあたり。
まず、switch(msg)で、ウィンドウメッセージの振り分けを行います。
次に、case WM_COMMANDに来て、さらにここでswitch(LOWORD(wp))で振り分けを行い、
case 11000でコマンドを実行しているわけです。
で、問題はこのcase文の最後の部分で、まず、breakされます。
さて、その次に実行されるのはどこの行でしょうか?
そう、その次に実行されるのは、その下のほうにあるPostQuitMessage(0)
本来なら、breakの後に}を入れて、さらに、その後の行にbreakを入れないと、
この関数まで実行されるわけです。
この間違えに気づくのにどれだけかかったことか。。。
もうね、自分があふぉかと思いましたよ。
しかも、この問題の争点が、違うプロシージャに移行したときに、
何かが起きてると勘違いをして、根本的に仕組みを
変えたものもすでに実装しちゃってたりします。
なんかなぁ、憂鬱だ、、、