プログラミング

ピタゴラスの定理のダイクストラによる証明の直筆ノート

ダイクストラ(E. W. Dijkstra)というと---少なくとも、ボクにとっては---「構造化プログラミング*1」「最短経路探索に対するダイクストラ法*2」で有名なのだが、そのダイクストラによる「三平方の定理の証明の直筆ノート(のPDF)」があったのでスクラップ*3。…

「Windows のコマンドプロンプト上で動くゲーム」のC言語スケルトンコード

教育用の覚書(のつもり)。「イベントドリブン」と「(画面の再描画のための)一定間隔での動作」をやらせるための Windows 用コンソールプログラムの骨格として試作したもの。ANSI C の標準ではない関数 kbhit(), getch() と windows.h の Sleep() を利用…

Cのポインタの使い方で勘違いしてたこと

ビギナー向けの教科書のポインタの説明に書いてあるようなことをぼんやりと想像しながら書いたら失敗したのでメモ: [2010.1.2] int daytab[2][13];と宣言したとき daytab + i は daytab = &daytab[0][0] から数えて i × sizeof( int * 13 ) バイト先のアド…

PHPの関数で複数の戻り値を渡す方法

マニュアル上では2個の知識の組み合わせになるのでメモを残す。参考:php function 戻り値 複数 - Google 検索, PHP: 返り値 - Manual, PHP: list - Manual

CUDAメモ

CUDA Toolkit 10.1 Download | NVIDIA Developer(http://www.nvidia.com/object/cuda_get.html)の CUDA 2.3 の Getting started guide (http://developer.download.nvidia.com/compute/cuda/2_3/docs/CUDA_Getting_Started_2.3_Windows.pdf) の p.2 System R…

Visual Studio 2008 Express Edition で hello world コードを作成する

自分専用の教育用の覚書。1個のソースコードファイルからなるプログラム(ここでは hello world と表示するコード)を作るまでの最小限の操作。以前、使っていた Visual C++ 6 からインターフェースの配置や名称が変わっている。IDEのどこに何があるかなんて…

Cで関数を受けるポインタを作成する。

gcc で動いたのでメモ。以下のコードは helloworld とターミナルに出力する。 #include <stdio.h> void sub(void){ printf("hello"); } void sub0(void){ printf("world"); } int main(void){ void (*a)(void)=sub; a(); a=sub0; a(); return 0; }[2010.10.24]次のコ</stdio.h>…

HTML parser and ...

PHP Simple HTML DOM Parser download | SourceForge.net http://www.codeproject.com/KB/recipes/FastMathParser.aspx http://cosmo.phys.hirosaki-u.ac.jp/wiki.cgi/maxima?page=FrontPage 別件を探していて出会ったのでクリップ。

2次元配列内のデータをポインタのポインタで参照する

教育用の覚書。 // 2次元配列内のデータをポインタのポインタで参照するための // ポインタのポインタを作成する関数 #include <stdlib.h> double **matrixToPtrPtr ( // 戻り値 double *a // 参照される配列 a[N0][N1] ,int N0 // 配列の第1添字の配列長 ,int N1 // </stdlib.h>…

直線の式のパラメーター表示とコンピュータグラフィックスのC言語プログラム

教育用の覚書。グラフィックス座標とワールド座標の変換についてのラフな説明。問題: y=x2-2x-2 のグラフを -1≦x≦3 の範囲で描きなさい。 数学的知識をプログラミングに応用するときの要点 [出発点となる基礎知識] 始点 A(x0,y0), 終点 B(x1,y1) をつなぐ線…

Runge-Kutta-Gill法について

Runge-Kutta-Gill法の各ステップの係数のチートシートを探していて次の論文に行き当たったのでメモ。 CiNii 論文 - Runge-Kutta-Gill法について 伊理 正夫, 松谷 泰行, 情報処理, 8(2), pp.103-107 (1967). ソースコードを見ると k=h*f(i) qi=q(i) r=0.5*K-q…

fortranのコメントを除去するPHPスクリプト

php delCom.php hoge.f */ echo "C FILE: ".$argv[1]."\n"; $basename= basename($argv[1],".".pathinfo($argv[1],PATHINFO_EXTENSION)); $handle= fopen($argv[1],"r"); if ( $handle ) { $text=""; while ( !feof($handle) ) { $line= f…

mindstorms Wiimote の組み合わせもたくさんあるんだな

control mindstorms Wiimote - Google 検索 http://hacknmod.com/hack/control-a-lego-mindstorms-nxt-robot-with-a-wiimote/

配列を与えて、配列を定義するPHPスクリプトの文字列を作成する関数。

PHP で $a=array(1,2,array(3,4)) を渡すと、文字列「array("0"=>"1","1"=>"2",array("0"=>"3","1"=>"4"))」を吐き出す再帰的関数。例えば一時的に作成した配列をファイルにテキストとして保存、再利用したいときに使う。function describeArray($array) { i…

PHPでclassというものをはじめて使ってみる。

目的は「再帰的に呼び出す関数(しかも複数)の中からアクセスしたいので、global で扱いたい変数があるけど、その変数がボクの目から迷子になって、変なところで書き換えられるようなことはあって欲しくない」くらいの目的。メンバー変数の参照に $ がいら…

H8プログラミング用資料

順次追加する予定 http://www9.plala.or.jp/fsson/NewHP_elc/Link_nH8.html h8 3694 秋月 - Google 検索

TDS01Vの資料探し

TDS01V - Google 検索, Mitaka - Google 検索 [2009.2.23]国立天文台のソフトMitakaにMitakaPointer: ぷろぐらむとかをつなげて動作することを確認した。ハードウェア的には問題なく動作する。あとはAPIのお勉強が必要。[蛇足]MikataPointer の Readme には…

つないでみただけ

http://onakasuita.org/wii/ が ThinkPad X60s (1705-C4J) + WinXP SP3 + SANWA/MM-BTUD11 で動作した。加速度センサのグラフが画面で見えるとちょっと感動。ハードウェアの準備はOK。次はAPIの使い方の勉強。

Windows上でフリーのfortranコンパイラを導入して、簡単なプログラムを作成する

[2010.2.3]姉妹編の文法基礎を書きました。 fortran 基礎文法最速マスター - あらきけいすけの雑記帳学生に fortran プログラミングをやらせようとして*1、Windows 上の fortran 90 環境を構築させようと思ったのだが、fortran コンパイラ フリー windows - …

省メモリRunge-Kutta法メモ

Carpenter, M. H., Kennedy, C. A., "Fourth-order 2N-storage Runge-Kutta Schemes", NASA Technical Memorandum 109112 (June 1994); 5段4次で配列2個 Brachet, M. E., Mininni, P. D., Rosenberg, D., Pouquet, A., "High-order low-storage explicit Run…

au携帯のブラウザのキャッシュ関連の調べものメモ

携帯サイトを試作したら au の動作が期待通りでなかったので調べた。auの携帯のブラウザはキャッシュを残すようである。 携帯サイト PHP au 動作しない - Google 検索 携帯サイト PHP au ページ更新 キャッシュ - Google 検索 http://q.hatena.ne.jp/mobile/…

CSVファイルの読み込み

C言語で「ファイルの読込」「文字列データの扱い」「連結リスト」の勉強をするためにCSVファイルを読み込んで連結リストに格納するコードを書いてみた。配列サイズ、変数サイズを予め決めない。fgets(), strtok()は用いていない。fgetc()で1バイトずつ読んで…

漸化式とプログラム

高校で学修する漸化式の内容はというと、例えば , のような漸化式から一般項 を出すような計算の演習になっている。これは微分方程式、例えば から を導出することと似ている。つまり「微分方程式」の離散版が「漸化式」であり、微分方程式の解を求めること…

gcc で windows プログラミング覚え

MinGW - Minimalist GNU for Windows, SourceForg.net MinGW - Documentation MinGW の C, C++ で Windows API を利用するときのオプション。これを付けないとコンパイルは通るがリンカを通したときに windows.h の関数がうまくリンクできず undefined refer…

PHPのコマンドラインで引数を取得する

コマンドラインからPHPを使ったときに引っかかったのでメモ [手許の環境]PHP 5.2.6 + WinXP SP3 (Windows NT 5.1 build 2600) ソース test.php test.php a b cとやると引数を取得しないが、C:\hoge> php test.php a b cとやると引数を取得する。最初、引数が…

PHPスクリプトで自分のつくったスクリプトをincludeする

PHPのスクリプトの中に、PHPのスクリプトとなる文字列を作成する部分を書いて、一旦スクリプトをファイルに書き出して、それをincludeする…ということができるのか。へぇ。

C言語メモ

後期の「シミュレーション設計学」の講義でのC言語の解説のために: keywordsの訳語は「予約語」, 予約語 - Wikipedia, Reserved word - Wikipedia identifierの訳語は「識別子」, 識別子 - Wikipedia, Identifier - Wikipedia punctuatorはWikipediaに項目…

FORTRAN90 構造化メモ

PROGRAM main [宣言部] [シナリオ部: CALL [動作名(引数なし)] ...] CONTAINS [動作の記述部: SUBROUTINE [動作名] (宣言なし:本体で宣言、副作用注意) [動作の詳細] END SUBROUTINE ...] [ラッパー部: SUBROUTINE w__[サブルーチン名](最小限の引数) […

メモ:C言語の学習の目標ってどのへんにあるだろう

アタマを整理しようと思って書き出したメモ(今後もちょこちょこ書き足す) 自分とプログラムの関係 C言語のマニュアルが読める 自分でプログラムが書ける 他人が作ったプログラム、ソースコードを再利用できる C言語の知識機械を動作させる呪文の唱え方なん…

INTERFACE の動作がわからん

ワカランのが INTERFACE の動作なのかもわからない。MODULE の変数のスコープに関する動作を理解できていないのだろう。走らないコードと走るコードを以下に示す MODULE typedef TYPE real8x10 REAL(8):: e(10) END TYPE INTERFACE OPERATOR (+) ! 外部手続…