read

働き

data で書かれているデータを読み込んで、変数に入れます。

文法

read 変数1[,<変数2> …]
  • 変数 - data に書かれたデータを入れる変数

説明

read は、data を使って書かれたデータ(数値や文字列)を読み込んで、変数に入れます。そのため、read は data と常に一緒に使用します。

read で読み込むデータは、data を使って書かれている必要があります。また、read で読み込む際の変数の型(数値型、文字列型もしくは配列の要素)は、読み込む対象のデータの形式と一致していなければなりません。配列の要素を指定することもできます。

data はプログラムのどこに書かれていても構いません。read により読み込まれるデータは、data が書かれた行の最も小さな行番号から順に読み込まれます。もし read によって読み込まれた個数以上のデータが data に書かれていた場合は、残りのデータは無視されます。また、もし data で書かれたデータを全て read により読み込まれたあとに、再度 read を実行した際には、out of data エラーとなり、プログラムの実行は中断します。

data に書かれたデータの種類と、read の変数の型との対応は、以下となります。

data に書かれたデータ read の変数の型 読み込まれる値
1 (数値) a (数値型変数) 1 (数値)
1 (数値) a$ (文字列型変数) "1" (文字列)
a または "a" a (数値型変数) エラーが発生します
a または "a" a$ (文字列型変数) "a"

変数は、配列変数を使うこともできます。

data に書かれたデータ read の変数の型 読み込まれる値
1 (数値) a@[n] 1 (数値)
"1" a@[n] "1"
a または "a" a@[n] "a"

サンプルプログラム

rem read 1
for i=1 to 10
  read x
  print x;" ";
next
data 3,4,1,6,2,7,8,3,4,9

rem read 2
read a$,b$,c$
print a$;" ";b$;"."
print a$;" ";c$;"."
data good,morning,evening

rem read 3
a@=[]
for i=0 to 5
  read a@[i]
  print a@[i];" ";
next
data 9,1,8,3,4,8