Pythonをマスターしよう
パズルを解いてアニメで見る
Update 2017.11.20
Since 2003.06.03
1千万人超ありがとう
リピータ ノーカウント
Python
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
「Python 3.6.2」「Matplotlib」「Numpy」「SciPy」等
オールインワンの「Anaconda3」(無償)は科学技術計算に最適
開発環境は JetBrains社の「Pycharm」(無償)を使う
「Python 2.7.10」「Python 3.4.3」を完璧にインストール
科学技術計算のための「Matplotlib」「Numpy」「SciPy」
開発環境は「PyScripter」「Visual Studio 2013」を使う
「Python」は「MATLAB/Scilab」や「R言語」を駆逐しつつある
Java用「Eclipse」,Python用「Eclipse」を完璧にインストール
All in Oneオールインワンなので手間いらず
インストールなし解凍だけ,面倒な設定ほぼなし
結城 浩「Java言語で学ぶデザインパターン入門」のサンプルをPythonにしました
Python3 で実際に動くソースコードがあります

ABSTRACT FACTORYADAPTERBRIDGEBUILDERCHAIN OF RESPONSIBILITYCOMMANDCOMPOSITEDECORATORFACADEFACTORY METHODFLYWEIGHTINTERPRETERITERATORMEDIATORMEMENTOOBSERVERPROTOTYPEPROXYSINGLETONSTATESTRATEGY
TEMPLATE METHODVISITOR
Mark Summerfield『実践 Python 3』のPythonサンプルを徹底解説します
実際に動くソースコードが原著者の Webサイト にあります

ABSTRACT FACTORYADAPTERBRIDGEBUILDERCHAIN OF RESPONSIBILITYCOMMANDCOMPOSITEDECORATORFACADEFACTORY METHODFLYWEIGHTINTERPRETERITERATORMEDIATORMEMENTOOBSERVERPROTOTYPEPROXYSINGLETONSTATESTRATEGY
TEMPLATE METHODVISITOR
3D プロット(3次元描画,3次元グラフ)
とするとき,関数 を3次元グラフで表示しなさい.

上の「VisualC++による理工学問題の解法 例題3.4 3次元表示」と同じものである
フーリエ変換(パワースペクトル)
音楽CDのデジタル音声の仕様;サンプリング周波数 = 44.1kHz, 音声のメイン周波数を440Hzとしそれにノイズを付加した疑似信号を入力して パワースペクトルを描画しなさい.


画像の幾何学的変換(lena)
超有名な画像 lena を読み込み,
トリミング,シフト,回転,ズーム,マスクなどの変換処理をしなさい.

画像の変換処理が for文や if文が一切使わないでできるのである.これが Python のすごいところである.
「宣教師と人食い人種」のパズルをPythonで解いた解答
再帰呼び出しによるバックトラック・アルゴリズムを詳しく解説します。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。
図はExcel VBAでつくったものです。
「8人の女王」のパズルをPythonで解いた解答
再帰呼び出しによるバックトラック・アルゴリズムを詳しく解説します。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。
「8人の女王」のパズルをPythonで解いた解答
再帰呼び出しを使わないバックトラックを実現します。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
紫藤氏の「8人の女王」Pythonプログラムを徹底解説
この紫藤氏のプログラムのソースファイルは解答と描画に分かれている。描画の方はこのサイトの別記事で少し解説している。解答の方はたいへん美しいPythonプログラムである。

これを巧みなデバッグで走らせてみて詳細な動作を解説する。
「マイクロマウス」の迷路をPythonで解いた解答
経路探索アルゴリズムはなくバックトラックだけです。ただし,直進優先にしてあります。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
「マイクロマウス」の迷路をPythonで解いた解答
最短経路探索 A*(エイスター)アルゴリズムを採用しています。迷路の配列や文字壁を自動作成します。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
「マイクロマウス」の迷路をPythonで解いた解答
足立法の歩数マップが示す最短経路は,A*(エイスター)アルゴリズムと同じになりました。歩数マップのアルゴリズムをお見せします。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
「8パズル」「15パズル」をPythonで解いた解答
最短経路探索 A*(エイスター)アルゴリズムを使って「8パズル」「15パズル」を解きました。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
「8パズル」「15パズル」をPythonで解いた解答
双方向A*(エイスター)アルゴリズムを使って「8パズル」「15パズル」を解きました。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
「ハノイの塔」のパズルをPythonで解いた解答
大きさの異なる5枚の円盤を3本の杭を使って必ず小さいものを上にしながら移していき完全に移してしまうことができるだろうか。

実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。
Peter Norvig氏の「数独」Pythonプログラムを徹底解説
Arto Inkala氏の「世界一難しい数独」でも0.01秒以下で解くPeter Norvig氏の「数独解法」Pythonプログラム。
普通の探索アルゴリズムでは探索回数が膨大になり解くことができないので制約伝播アルゴリズムを使って驚異的な速度で解いている。

これを巧みなデバッグで走らせてみて詳細な動作を解説する。
Peter Norvig氏の「数独」Pythonプログラムで問題を無制限につくる
「数独」の難易度は機械的な絞り込みの結果残った候補数字の数に関係ある。これらの数を掛け合わせたものが探索回数である。これを計算できるようにプログラムを改造する。
「ライフゲーム」をPythonで解いた解答
格子状のセルラーがある規則に準じて誕生したり死滅したり生き残ったりします。最初の盤面が数個のセルラーから始まり盤面に一杯になったりすぐ消滅してしまったりどうなるかまったく予想がつきません。
実際に動く Python ソースコードがあります。ドラッグして PyScripter などの開発環境にコピペすればそのまま動きます。Tkinterによるアニメーションで見ればコンピュータの試行が人間の思考のように見えます。

 
標準C++をマスターしよう
プロになるための
標準C++練習問題
Update 2017.05.16
Since 2003.06.03
1千万人超ありがとう
リピータ ノーカウント
ソフトウェアのプロになるにはメジャーなプログラミング言語をマスターすることが必須である.
本当にプロになりたいのならC言語か標準C++を学べばよい.これを知らないで他の言語を知っていてもプロとは認められない.
C言語か標準C++を使えば,コンピュータの内部の動きが理解できるようになり,きちんとしたプログラミングができるようになる.それからスマホのJavaやObjective-Cなど他の言語を学ぶと簡単にマスターできるようになるし,複雑なものも構造的に判りやすくつくることができるようになる.

C言語か標準C++の開発環境は,マイクロソフトが無償で提供しているWindows上で動くVisual C++ 2010を使う.これはC++/CLIの開発環境でもあるが,この言語はプロにはまったく必要ないものである.

学生のためのC++
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
学生のためのC++ C/C++辞典
中村隆一著「学生のためのC++」東京電機大学出版局
はC++のエッセンスがすべて詰まっていてC++を学ぶのに最適な良著である.
本サイトでは,この本の例題のすべてを標準C++に書き直し,Visual C++ 2010上で検証したものを練習問題として紹介する.
標準C++の文法は
増田智明著「C/C++辞典」秀和システム
を参考にした.
Visual C++ 2010 Expressのインストールと標準C++のデバッグ方法
標準C++C++/CLIとは何が違うのか?
すべての例題は,WEBページをドラッグしてVisual C++ 2010 Express
コピペすればそのまま動作する
学生のためのC++ まとめて全部(キーワード検索可)
学生のためのC++ 第1章 ストリーム
学生のためのC++ 第2章 関数
学生のためのC++ 第3章 構造体(1)
学生のためのC++ 第4章 構造体(2)
学生のためのC++ 第5章 クラス
学生のためのC++ 第6章 ファイル処理(クラスの使い方)
学生のためのC++ 第7章 グラフィックス
学生のためのC++ 第8章 継承

VisualC++による理工学問題の解法
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
VisualC++による理工学問題の解法 VisualC++による理工学問題の解法 例題3.4
佐藤次男・佐藤裕哉著「VisualC++による理工学問題の解法」日刊工業新聞社
は,.NET Framework上で動くC++/CLIで書かれているグラフィックスのエッセンスがすべて詰まってる.
本サイトでは,この本の例題のすべてを標準C++に書き直し,Visual C++ 2010上で検証したものを練習問題として紹介する.
標準C++の標準ライブラリにはグラフィックスは用意されていない.そこで拡張ライブラリであるWIN32APIを使う. WIN32APIのグラフィックスは,.NET Frameworkのものとほとんど同じであるが,グラフィックス以外の部分を標準C++で書きたいので,WIN32APIを使うことにする.

Win32APIの詳細な使い方は次のサイトを参照してほしい.
http://www.geocities.jp/ky_webid/win32c/index.html
http://www.geocities.jp/ky_webid/index_old.html
http://www.geocities.jp/ky_webid/index.html
すべての例題は,WEBページをドラッグしてVisual C++ 2010 Express
コピペすればそのまま動作する
VisualC++による理工学問題の解法  まとめて全部(キーワード検索可)
VisualC++による理工学問題の解法  例題3.1 三角関数の合成
VisualC++による理工学問題の解法  例題3.2 三角関数の級数展開
VisualC++による理工学問題の解法  例題3.3 リサージュ図
VisualC++による理工学問題の解法  例題3.4 3次元表示

Excel VBA Java
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
宣教師と人喰土人
  8人の女王
  マイクロマウス
Excel VBAで解いた解答 再帰呼び出しとバックトラックのアルゴリズム
Java 実際に動作するサンプルプログラムで
ラッパクラス,ラッパーオブジェクト,ラッパーメソッド を完全に理解する
Java 実際に動作するサンプルプログラムで
スレッドの構文の7つのパターン を完全に理解する
ディジタルPID ディジタルPIDの演算式の導出。ブロック図の書き方。プロセスからのAD変換,プロセスへのDA変換,PLC既成のPIDとの接続を設計

印刷にはPDFが最適.A4に印刷すれば教科書の体裁になるようなフォームである.
PDFファイルなどをダウンロードするには,リンク文字・アイコンを,右クリック→対象をファイルに保存(A)...
ご意見,ご質問は,次にメールください.ウィルス対策のためドラッグしてコピペしてから*を@に書き換える
yamakatsusan00*yahoo.co.jp

私のホームページは他にもいっぱいあります