Basic Pascal Tutorial/Chapter 2/Input/ja

From Free Pascal wiki
(Redirected from Input/ja)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

български (bg) Deutsch (de) English (en) français (fr) 日本語 (ja) 한국어 (ko) русский (ru) 中文(中国大陆)‎ (zh_CN)

2A - 入力 (著者: Tao Yue, 状態: 原文のまま修正なし)

入力とはプログラムに入ってくるもののことである。キーボードから入ることもあれば、マウス、ディスクのファイル、スキャナー、ジョイスティックなどなどから入ってくることもある。

マウス入力については詳しく取り上げない。その理由は、文法がマシン次第で異なるからである。加えて、今日のイベント・ドリブンのウインドウOSがたいていマウス入力を扱ってくれるからである。

データの読み込みの基本フォーマットは以下の通りである。

read (変数リスト);

Variable_List はカンマで区切られた変数識別子のリストである。

readは特殊な行末文字で行が区切られた一連の文字として入力を扱う。一方、readlnは値を読み込んだ後、行末文字の後に自動的に移動することで次の行へと飛ぶ。

readln (変数リスト);

ユーザから次のような入力を受け取ったとしよう。a, b, c,そして d はみな整数である。

45 97 3
1 2 3

ここでは readreadln の命令文の例を、適当な変数に読み込まれた値と共に示す。

Statement(s) a b c d
read (a); 45 97
read (b);
readln (a); 45 1
read (b);
read (a, b, c, d); 45 97 3 1
readln (a, b); 45 97 1 2
readln (c, d);

整数として読む場合、数字が見つかるまでスペースはすべて読み飛ばされる。そうして、数字ではない文字(空白に限らず)が出てくるまで続くすべての数字が読まれる。

8352.38

上の入力から整数が読み込まれると、その値は 8352 となる。もし、その後に文字を読み込めば、その値は '.' になるだろう。なぜなら読み取りヘッドは最初の英数字で止まるからである。

2つの整数を読み込もうとしたとしよう。それはうまくいかない。なぜなら、コンピュータが2番目の変数を満たすデータを探したとき、 '.' を見つけ、それが読み込むべきデータではないので止まってしまうからである。

実数データでも、コンピュータは空白をスキップする。そして、読める限りの数値を読み込む。しかし、多くの Pascal コンパイラはひとつ追加の制限を設けている。それは省略された実数は許されず、 0. ではじまらなくてはならないということである。従って、 .678 は不適切でコンピュータは実数として読めない。しかし、 0.678 は問題がない。

引数リストの識別子がすべて変数であることを確認しておこう。定数には数値を割り当てられないし、リテラル値にも数値は割り当てられない。

previous contents next