• 検索結果がありません。

第 1 章 E T プ ロ グ ラ ミ ン グ 1 . プ ロ グ ラ ミ ン グ と は

N/A
N/A
Protected

Academic year: 2021

シェア "第 1 章 E T プ ロ グ ラ ミ ン グ 1 . プ ロ グ ラ ミ ン グ と は"

Copied!
3
0
0

読み込み中.... (全文を見る)

全文

(1)

4

第 1 章     E T プ ロ グ ラ ミ ン グ

1 .   プ ロ グ ラ ミ ン グ と は

計 算 機 に 与 え る 計 算 方 法 の 指 令 を プ ロ グ ラ ム と い い 、 プ ロ グ ラ ム を 記 述 す る た め の 言 語 を プ ロ グ ラ ミ ン グ 言 語 と い う 。例 え ば

C

Basic

な ど は プ ロ グ ラ ミ ン グ 言 語 で あ る 。そ し て 、 与 え ら れ た 問 題 を 解 く た め の プ ロ グ ラ ム を 作 り 出 す こ と を プ ロ グ ラ ミ ン グ と い う 。

  上 の 図 は 、 C 言 語 で 書 い た プ ロ グ ラ ム の 例 を 示 し た も の で あ る が 、 他 に も 、

Basic

や そ の 他 の 言 語 で 同 様 の プ ロ グ ラ ム を 書 く こ と が で き る 。

2 . プ ロ グ ラ ミ ン グ 言 語 E T

本 書 で は E T と い う プ ロ グ ラ ミ ン グ 言 語 を 学 ぶ 。 E T の プ ロ グ ラ ム は 、 問 題 を 正 し く 変 換 す る よ う な 「 き ま り 」 か ら な る 。 そ れ ぞ れ の 「 き ま り 」 の こ と をル ー ルと 呼 ぶ 。 い く つ か の ル ー ル が 集 ま っ て 、 1 つ の

ET

の プ ロ グ ラ ム に な る 。 そ し て 、 1 つ 1 つ の ル ー ル は 、 問 題 を 簡 単 化 す る た め に 使 わ れ る 。 次 ペ ー ジ の 図 で は 、

問 題

2つの数の最大公約数を 求める。

プログラム

#include <stdio.h>

void main(void) {

int a, b, m, n, k;

scanf (“%d %d”, &a, &b);

m=a; n=b;

do { k=m % n;

m=n; n=k;

} while(k!=0);

printf(“%d¥n”,m);

}

プログラミング

プログラミング言語 問 題

問 題

2つの数の最大公約数を 求める。

プログラム

#include <stdio.h>

void main(void) {

int a, b, m, n, k;

scanf (“%d %d”, &a, &b);

m=a; n=b;

do { k=m % n;

m=n; n=k;

} while(k!=0);

printf(“%d¥n”,m);

}

プログラム プログラム

#include <stdio.h>

void main(void) {

int a, b, m, n, k;

scanf (“%d %d”, &a, &b);

m=a; n=b;

do { k=m % n;

m=n; n=k;

} while(k!=0);

printf(“%d¥n”,m);

}

プログラミング

プログラミング言語

2つの数の最大公約数を 求める。

問 題 C プログラム

Basic

プログラム

Fortran

プログラム

ETプログラム

2つの数の最大公約数を 求める。

2つの数の最大公約数を 求める。

問 題

問 題 C プログラム C プログラム

Basic

プログラム

Basic

プログラム

Fortran

プログラム

Fortran

プログラム

ETプログラム

ETプログラム

(2)

5

  (gcd *A 0 *X) ‑‑> (= *X *A). 

  (gcd *A *B *X),{(> *B 0)} ‑‑> (:= *C (mod *A *B)),(gcd *B *C *X). 

 

の 2 つ が ル ー ル と な る 。 そ し て 、 こ れ ら 2 つ の ル ー ル か ら な る 集 合 が 1 つ の プ ロ グ ラ ム で あ る 。  

 

ET

の 枠 組 み で は 、 問 題 が 入 力 さ れ る と 、 プ ロ グ ラ ム 中 の ル ー ル が 次 々 に 使 わ れ て 問 題 が 簡 単 化 さ れ る 。 そ し て 、 最 終 的 に 問 題 が 最 も 簡 単 な 形 に な り 、 そ こ か ら 解 答 を 得 る こ と が で き る 。 こ の よ う な 問 題 解 決 の 方 式 は さ ま ざ ま な 問 題 を 解 く た め に 用 い ら れ る 。

例 え ば 、 連 立 方 程 式 を 解 く 場 合 を 考 え て み よ う 。 私 た ち は 加 減 法 や 代 入 法 な ど を 用 い て 連 立 方 程 式 を ど ん ど ん 簡 単 な 形 に し て い く 。 そ し て 、 最 終 的 に 連 立 方 程 式 は 最 も 簡 単 な 形 で あ る 、 X = 数 、 Y = 数 と い っ た 形 に な る 。 こ れ は 連 立 方 程 式 の 解 を 表 し て い る 。 連 立 方 程 式 の 解 法 で は 、 代 入 法 や 加 減 法 な ど が 問 題 を 簡 単 化 す る ル ー ル と 考 え る こ と が で き る 。  

実 は 、連 立 方 程 式 だ け で な く 、非 常 に 広 い 範 囲 の 問 題 が 同 じ 原 理 で 解 決 で き る の で あ る 。

ET

の 枠 組 み で は 連 立 方 程 式 よ り も 、 ず っ と 広 い 範 囲 の 表 現 方 法 が 導 入 さ れ て お り 、 数 だ け で な く 論 理 式 な ど で 問 題 を 表 現 す る こ と も 可 能 で あ る 。 そ し て 、 そ れ ら を ル ー ル で 変 換 す る こ と に よ っ て 、 連 立 方 程 式 を 解 く の と 同 じ よ う に 、 さ ま ざ ま な 問 題 を 統 一 的 な 考 え 方 で 解 く こ と が で き る 。

3 .E T の プ ロ グ ラ ム の 作 り や す さ

  E T の 枠 組 み で は 、 プ ロ グ ラ ム を 作 り 出 す こ と は 比 較 的 た や す く な る 。 そ れ は 、 一 挙 に プ ロ グ ラ ム 全 体 を 作 り 上 げ る 必 要 が な い か ら で あ る 。 あ る 問 題 が 与 え ら れ た と き 、 そ の 問 題 を ま ず ど う 簡 単 化 し よ う か と 考 え 、 そ の た め の ル ー ル を 1 つ 書 く 。 そ れ は 、 あ る 特 別 な 場 合 に 適 用 さ れ る 簡 単 化 ル ー ル で よ い 。 そ し て 、 そ れ は プ ロ グ ラ ム の 一 部 分 と な る 。 そ れ を 適 用 す る と 問 題 は 少 し 簡 単 化 さ れ る で あ ろ う 。 そ し て 、 簡 単 化 さ れ た 問 題 を 、 再 び ど の よ う に し て さ ら に 簡 単 化 す る か を 考 え る 。 そ し て 、 再 び ル ー ル を 書 き 、 プ ロ グ ラ ム が 少 し 大 き く な る 。 こ れ を 繰 り 返 す こ と に よ っ て 、 少 し ず つ ル ー ル が 蓄 積 し 、 プ ロ グ ラ ム が 完 成 に 近 づ く 。 こ の よ う に し て 、 ル ー ル を 貯 め て い く こ と が 、 ま さ に プ ロ グ ラ ム を 作 る と い う こ と に 他 な ら な い わ け で あ る 。

問 題

2つの数の最大公約 数を求める

(gcd *A 0 *X) ‑‑> (= *X *A).

(gcd *A *B *X),{(> *B 0)}‑‑> (:= *C (mod *A *B)), (gcd *B *C *X).

E T 問 題

問 題

2つの数の最大公約 数を求める

(gcd *A 0 *X) ‑‑> (= *X *A).

(gcd *A *B *X),{(> *B 0)}‑‑> (:= *C (mod *A *B)), (gcd *B *C *X).

E T

E T

(3)

6

4 . イ ン タ プ リ タ と コ ン パ イ ラ

計 算 機 が 直 接 に わ か る 言 語 は 機 械 語 で あ る が 、 私 た ち は 、 人 間 に と っ て わ か り や す い プ ロ グ ラ ミ ン グ 言 語 を 用 い て ア ル ゴ リ ズ ム を 表 現 す る 。 そ こ で 、 プ ロ グ ラ ミ ン グ 言 語 か ら 機 械 語 に 翻 訳 す る 必 要 が あ る 。 プ ロ グ ラ ミ ン グ 言 語 の 処 理 方 式 は 、 大 き く イ ン タ プ リ タ と コ ン パ イ ラ と い う 2 つ に 分 け て 考 え る こ と が で き る 。 イ ン タ プ リ タ と は 、 プ ロ グ ラ ム の 断 片 を 逐 次 解 釈 し 実 行 す る 処 理 系 で あ る 。 コ ン パ イ ラ と は 、 全 て の プ ロ グ ラ ム を 一 括 し て 機 械 語 に 翻 訳 し て か ら 、 実 行 す る 処 理 系 で あ る 。

  イ ン タ プ リ タ を 用 い る と 、 は じ め か ら プ ロ グ ラ ム 全 体 を 機 械 語 に 翻 訳 す る 必 要 は な い 。 プ ロ グ ラ ム は 実 行 の 段 階 で 、 少 し ず つ 解 釈 さ れ て 実 行 さ れ る 。 そ の た め 、 実 行 を す ぐ 始 め る こ と が で き る が 、 実 際 の 実 行 に か か る 時 間 は 長 く な る 。 一 方 コ ン パ イ ラ の 場 合 に は 、 実 行 す る 前 に コ ン パ イ ル と い う 処 理 に よ っ て 、 プ ロ グ ラ ム 全 体 を 機 械 語 に 直 す 作 業 が 必 要 に な る た め 、 そ の 作 業 に 要 す る 時 間 が 長 く な る 。 し か し 、 高 速 な 実 行 が 可 能 に な る 。

こ の よ う に 、イ ン タ プ リ タ 方 式 の 処 理 系 と コ ン パ イ ラ 方 式 の 処 理 系 は 、一 長 一 短 が あ る 。 有 力 な 考 え 方 と し て 、 プ ロ グ ラ ム を 開 発 す る 段 階 で は イ ン タ プ リ タ を 使 い 、 完 成 し た 段 階 で は コ ン パ イ ラ を 使 う 手 が あ る 。 そ う す れ ば 、 少 し ず つ 頻 繁 に プ ロ グ ラ ム を 修 正 し た い と き に は 、 す ぐ に 実 行 し て 確 か め る こ と が で き

(

イ ン タ プ リ タ

)、 完 成 し た 場 合 に は 、 高 速 に

大 規 模 な 計 算 を 実 行 す る こ と が で き る

(

コ ン パ イ ラ

)。

E T の イ ン タ プ リ タ で あ る E T I は 、 プ ロ グ ラ ム を 作 っ て 実 行 し て み た り 、 少 し 修 正 し て 実 行 し て み た り す る と い う よ う な 、 プ ロ グ ラ ミ ン グ の 練 習 に と て も 便 利 に 使 う こ と が で き る 。 も し 、 皆 さ ん が そ の よ う に し て 、 お も し ろ い プ ロ グ ラ ム を 完 成 し た 場 合 に は 、 E T の コ ン パ イ ラ で あ る E T C を 用 い て 機 械 語 に 直 す こ と で 、 よ り 高 速 な 実 行 が 可 能 に な る 。

参照

関連したドキュメント

Air Injection Unit; I Held Yarn Tip, II Received Yarn Tip from Yarn Tip Carrier, III Inject Yarn End into Hollow Spindle, a Yarn Tip Carrier, b Injection Air Flow, c Stay, d Pipe,

However the automatic drawing-in system developed in order to improve drawing-in operation is not able to distinguish whether the core yarn is successfully drawn into the hollow

In this report , control methods for this autonomous vehicle are investigated to approach the initial operating position rapidly, to break away at the end of the covering machine,

Department of Central Radiology, Nagoya City University Hospital 1 Kawasumi, Mizuho, Mizuho, Nagoya, Aichi, 467-8602 Japan Received November 1, 2002, in final form November 28,

Otonashishinsui Park is considered one of Japan's top 100 city parks for its reproduction of the Gongen-no-Taki waterfall, one of the seven Oji waterfalls that were once located

”, The Japan Chronicle, Sept.

(( , Helmut Mejcher, Die Bagdadbahn als Instrument deutschen wirtschaftlichen Einfusses im Osmannischen Reich,in: Geschichte und Gesellschaft, Zeitschrift für

[r]