Итак процедура READ - считать поле записи ( пользователь вводит строку)
Код
Uses CRT;
{...}
procedure READ(var s:string);
var
kodklav:integer;
i:byte; { счетчик, byte -что-бы экономить память }
begin
repeat
inc(i); {увеличиваем i}
kodklav:=readkey; {здесь readkey - НЕ ВСТРОЕННОЕ СРЕДСТВО ЯЗЫКА,
т.к доступно только после USES CRT; }
s[i]:=CHR(kodklav); {начинаем с 1 эл-та строки}
until kodklav=13; { прекращаем, когда нажата ENTER }
s[0]:=CHR(i); { если вдруг это не будет работать, замени на такую конструкцию:
for kodklav:=1 to i do s:=s+s[kodklav] }
end;
Дальше я подумаю, как остальные сделать, а ты пока эту процедуру проверяй,
если будут ошибки -сразу пиши, я эту процедуру в окне ответа писал, но думаю, чот ошибок быть не должно.
А команда s[0]:=CHR(i) -нужна для указания длинны строки