GreatLion
Например, считывай посимвольно и добавляй к строке пока не встретишь пробел:
Код:
program num;
var a,b:string; c:char; f:text;
begin
assign(f,'input.dat');
reset(f);
a:=''; repeat read(f,c); if c<>' ' then a:=a+c; until c=' ';
b:=''; repeat read(f,c); if c<>' ' then b:=b+c; until c=' ';
write(a,' - ',b);
close(f);
read;{}
end.
Или считывай строку целиком, а потом разбивай ее на части...
З.Ы. Кстати, не забывай закрывать файл. И задержку можно делать, не указывая имени переменной в read. А лучше делать это функцией readkey из модуля CRT.
З.З.Ы. Вот код для считывания по строкам и разрезания строк по пробелам в массив:
Код:
uses
crt;
var
a: array [0..32] of string;
s: string;
n, i, j: integer;
f: text;
begin
clrscr;
assign(f, 'input.dat');
{$I-}
reset(f);
{$I+}
if IOResult = 0 then begin
n := 0;
repeat
readln (f, s);
while s <> '' do begin
i := 1; while (i <= length (s)) and (s[i] = ' ') do inc (i);
if i < length (s) then begin
s := copy (s, i, length (s) - i + 1);
j := pos (' ', s) - 1; if j = -1 then j := length (s);
a[n] := copy (s, 1, j);
inc (n);
if j = length (s) then s := ''
else s := copy (s, j + 1, length (s) - j);
end;
end;
until eof (f);
dec (n);
for i := 0 to n do
writeln (a[i]);
close (f);
end else writeln('Can''t open file ''input.dat''');
write ('press any key to exit...');
readkey;
end.