Basic Pascal Tutorial/Chapter 2/Input/ja
│
български (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
ここでは read と readln の命令文の例を、適当な変数に読み込まれた値と共に示す。
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 |