2010年09月の記事一覧

おもいついたこと、あれこれ、自由に書いています。よろしかったらごらん下さい。このサイトから何かを感じていただければ幸いです。…….

月別:2010年09月
北野幸伯さんの「国家の気概」
  • 投稿 2010/09/19
  • 特集
北野幸伯さんの「国家の気概」

この円高不況下、G2なる米中二超大国にはさまれた日本は、今後、どちらの方向に進むべきなのだろうか。これを考える上で、極めて示唆に富む書籍が、最近、発行された。書籍名は「国家の気概【完全版】」、著者は、北野幸伯(きたのよしのり)さんである。

 

江戸時代の終り、ペリー来航から第一次、第二次大戦、冷戦の時代を、ひもとき、ヘーゲルの弁証法(注) にみる「正」「反」「合」を史実と符合させて、その時代時代の本質を見抜き、次に何が起こるべきなのかを予測している。

 

私も全部をほぼ数日で読んでしまった。そして、最後に示唆された「今後の日本」の予測に驚愕した。私もその昔、世界史を゛勉強したことがあるが、近代史・現代史をこのような視点からみたことはなかった。この視点を学ぶだけでも、一読する価値のある書籍とおもう。

 

著者の北野さんは、ロシア在住とのこと。少し離れた位置から日本をみておられるようだ。だが、その指摘は鋭い。そして、過去の分に関しては予測があたっている。その内容は次のようなものだ。

 

書籍の紹介記事を引用させていただく。

 

「アメリカ幕府の天領・日本が、今度は中国の「小日本省」になってしまう!? 民主党が進める売国政策、外国人参政権から始まる亡国のシナリオ——国家存続の危機! 今こそ究極の平和ボケ状態から目を覚まし、日本を守る時です。歴史の進化に沿ったより自由で平等な陣営につくことができれば日本の未来は明るいのです! 日本のエリートはみんな読んでいる!? 超人気メルマガ「ロシア政治経済ジャーナル」の北野幸伯が贈る世界一わかりやすい国際情勢。本書は、電子書籍『国家の気概』第1章から第5章までをまとめたものです。」

 

構成は次のようになっている。

 

第1章 日本が世界にもたらしたもの
・人類はどこへむかうのか?
・「自由」「平等」への原動力
・国家ライフサイクル
・選ばれし国
・東洋の楽園 ~ 選ばれし国への準備
・ペリー来航と日本人の気概
・奇跡の明治維新
・江華島事件
・日清戦争
・日ロ戦争
・第一次大戦の勝利と暗転
・第二次世界大戦
・世界の経済大国

 

第2章 歴史が進化するメカニズム
・歴史が「自由」「平等」にむかうメカニズム
・アメリカは、なぜ「民主主義国」になったのか?
・スミス対マルクス
・マルクス対ケインズ
・なぜ植民地はなくなった?
・冷戦の開始
・アメリカの自信喪失
・中国・朝鮮の代理戦争
・ケネディの焦り
・ベトナム戦争
・グレート・ソサエティ
・アメリカ「暗黒の10年」
・救いはアジアから
・冷戦の終わり

 

第3章 一極世界から多極世界への変化
(省略)

 

第4章 中国のダークサイド
(省略)

 

第5章 自由と平等が勝利する
(省略)

 

以上のとおりだが、ご興味・ご関心のおありの方は、ぜひご一読を願いたい。近代史・現代史の整理にもなる。

 

現在、この書籍は、電子書籍として、携帯電話およびPCでのみ発行されている。電子書店大手パピレスの週間ベストセラーランキング(ビジネス・教育部門)で、1カ月にわたり1位を記録したという。

 

詳細およびダウンロードは、こちらの電子書店パピレスまで。

http://www.papy.co.jp/act/books/1-146532/

 

書籍名  :国家の気概【完全版】

著者名  :北野幸伯

価格   :525円 (税抜価格 500円)

発行   :パブリッシングリンク

 

 

(注)

 

ドイツの哲学者ヘーゲル(1770-1831)は人の論理的な思考そのものと、人と人との議論が複雑な現象の中にしだいに真実を見出だしていく過程を「弁証法」として体系化したとされる。

 

ヘーゲルによれば、ある概念Aはそれに対立する概念Bを生み、この対立はそれらを止揚する概念Cを生んでこの対立は発展的に解消されるのだという。

きわめて大まかだが、「より全体的・包括的な見方、考え方へと変化していく」概念といえよう。

 

(2010-9-19)

 

 

北野さんは、『世界一わかりやすいアメリカ没落の真実』というレポートをお書きになっています。

 

現在、無料で読むことができます。「サブプライム問題」「リーマン・ショック」よりも、もっと根本的な「アメリカ没落」の原因がわかります。以下に、紹介させていただきます。

 

『2008年、アメリカ発の「100年に1度の大不況」が起こり、同国の衰退が誰の目にも明らかになりました。一般的に危機の原因は、「住宅バブル崩壊」「サブプライム問題」だといわれています。

 

しかし、アメリカが没落した理由は他にありました。冷戦の終結により、ソ連の脅威から解放された欧州。誇り高き欧州エリートは、「アメリカから覇権を奪回すること」を決意します。フランスはフセインをそそのかし、何をさせたのか?なぜ、米ロの新冷戦がはじまったのか?独仏中ロは、どのようにアメリカを追いつめていったのか?

 

この無料レポートで「アメリカ没落の真実」が完璧にわかるようになります。』

http://www.muryoj.com/get.php?R=13883&M=100003821

 

C言語の習い始めと「最小自乗法」
  • 投稿 2010/09/12
  • 体験
C言語の習い始めと「最小自乗法」

これも、いまでは表計算ソフトのExcelやCalcなどで簡単にできるとおもうのだが、およそ25年ほど前はまだそれほど便利ではなかった。ちょっとした実験データを整理するのに使った「最小自乗法」のコードは、自分でコードを書いて使っていた。

 

その当時は、パソコンも8ビットから16ビットへの移行の時期で、プログラミング言語はもちろんBASICがメインであった。

 

当時、作成したコードの一部をご紹介しよう。

 

測定するデータとして、x と y の組を何個か(n組としよう)を準備し、いわゆる y=ax+b の係数 a と b を求めるものであり、直線への回帰の度合いを r^2 という指標で表すものである。

 

これをBASIC言語で記述すると、次のような感じになる。

 

=====(ここから)=====

1 ‘ file”LSQL”

10 ‘ least square method (linear)

20 ‘SCREEN 0:CLS:CLEAR:KEY OFF

30 DIM X(30),Y(30),Z(30),W(30),V(30)

40 PRINT”formula Y = A X + B”:PRINT

45 PRINT

50 INPUT”quantity of set ( N ) = “;N

60 PRINT:PRINT

70 FOR I=1 TO N

75 PRINT I;

80 INPUT” ( X , Y ) = “;X(I),Y(I)

85 IF X(I)=-1 THEN I=I-1:GOTO 75

90 NEXT I

100 FOR I=1 TO N

110 Z(I)=X(I)*Y(I):W(I)=(X(I))^2:V(I)=(Y(I))^2

120 NEXT I

130 Z1=0:X1=0:Y1=0:W1=0:V1=0

140 FOR I=1 TO N

150 Z1=Z1+Z(I):X1=X1+X(I):Y1=Y1+Y(I):W1=W1+W(I):V1=V1+V(I)

160 NEXT I

170 A=(Z1-(X1*Y1)/N)/(W1-(X1)^2/N)

180 B=Y1/N-A*(X1/N)

190 R1=(Z1-(X1*Y1)/N)^2

200 R2=W1-(X1)^2/N

210 R3=V1-(Y1)^2/N

220 R=R1/(R2*R3)

225 PRINT:PRINT

230 PRINT” A = “;A

240 PRINT

250 PRINT” B = “;B

260 PRINT

270 PRINT” R^2 = “;R

280 PRINT

290 END

=====(ここまで)=====

 

BASICはインタプリターとよばれるものであって、一行ずつ解釈しながら実行する。そのため、スピードは遅い。これに対して、コンパイラとよばれるものは、一度機械語に変換してから実行するので速い。

 

C言語のコンパイラが16ビットパソコンで使えるときき、なんとかしてBASICで書いたコードをCに変換できないかを考えたものであった。

 

C言語のコンパイラは、当時、LSI-C86試食版ver3.30 というものが、たしか、雑誌の付録で無償提供されていたのであった。

 

そんなとき、街中の本屋さんで偶然みつけたのが、科学技術関係のフリーソフトを納めたCD-ROMであり、その中におもしろいものがいくつかあった。

 

そのひとつが、「B to C」という変換ソフトで、BASIC言語のコードをC言語に強制的に変換するものであった。変換後の多少の手直しは必要だが、そのときは、とても便利であった。たとえば、上述の「最小自乗法」のコードは、次のようになる。

 

=====(ここから)=====

/**** Least Square Method by Osamu Furukawa ****/

#include “stdio.h”

#include “math.h”

#include “string.h”

#include “stdlib.h”

unsigned char _s0[256],_s1[256],_s2[256];

float a;

float b;

int i;

int n;

float r;

float r1;

float r2;

float r3;

float v[31];

float v1;

float w[31];

float w1;

float x[31];

float x1;

float y[31];

float y1;

float z[31];

float z1;

main()

{
extern float a;

extern float b;

extern int i;

extern int n;

extern float r;

extern float r1;

extern float r2;

extern float r3;

extern float v[31];

extern float v1;

extern float w[31];

extern float w1;

extern float x[31];

extern float x1;

extern float y[31];

extern float y1;

extern float z[31];

extern float z1;

putchar(‘\n’);

printf(“Least Square Method \n”);

putchar(‘\n’);

printf(” formula Y = A X + B\n”);

putchar(‘\n’);

printf(” quantity of set ( N ) = “” ? “);

scanf(” %d”,&n);

putchar(‘\n’);

for(i=1;i<=n;i+=1){

l_75: ;

printf(” %d “,i);

printf(” ( X , Y ) = “” ? “);

scanf(” %f, %f”,&x[i],&y[i]);

if(x[i]==-1){

i=i-1;

goto l_75;}

}

for(i=1;i<=n;i+=1){

z[i]=x[i]*y[i];

w[i]=pow((x[i]),2);

v[i]=pow((y[i]),2);

}

z1=0;

x1=0;

y1=0;

w1=0;

v1=0;

for(i=1;i<=n;i+=1){

z1=z1+z[i];

x1=x1+x[i];

y1=y1+y[i];

w1=w1+w[i];

v1=v1+v[i];

}

a=(z1-(x1*y1)/n)/(w1-pow((x1),2)/n);

b=y1/n-a*(x1/n);

r1=pow((z1-(x1*y1)/n),2);

r2=w1-pow((x1),2)/n;

r3=v1-pow((y1),2)/n;

r=r1/(r2*r3);

putchar(‘\n’);

printf(” A = %g\n”,a);

putchar(‘\n’);

printf(” B = %g\n”,b);

putchar(‘\n’);

printf(” R^2 = %g\n”,r);

putchar(‘\n’);

}
=====(ここまで)=====

 

と、こんな感じになるのであった。もちろん、むだの部分も多いとおもうが、計算処理は速くできたのであった。

 

このようなきっかけが、私のC言語の習い始めであった。ただ、その後、表計算ソフトが発達し、DOSベースでのLotus1-2-3や、Windows3.1 ベースでExcelなどが簡単に使えるようになってからは、この「C言語」との関係はだんだん薄くなってしまった。

 

だが、これも私にとっては貴重な良い経験であった。

 

(おそらく、読者の皆さんのなかには、この記事をごらんになって、自分だったらもっとスマートにコーディングできるのにと思われる方もおられるとおもう。なにしろ、あくまでも、当時の私の経験したことなので、ご寛容を願いたい。)

 

(2010-9-12)

 

 

(追記)

 

もっとスマートにコーディングするとしたら、こんな感じになるでしょうか。

 

(2010-9-12)