Здравствуйте, Кирилл! Ну типа как просил - так и выводит :-) Ты описание оператора while помнишь: while условие do оператор; Один оператор! Т.е. ты читаешь строки до конца файла и только потом выполняется вывод строки. Соответственно, последней прочитанной. Чтобы выполнить в цикле несколько команд нужно заключить их в операторные скобки begin end. Получится составной оператор, который и будет выполняться в цикле: while not Eof (f) do begin readln (f, str); writeln (str); end; Кстати, на будущее - используй отступы при написании программы - легче будет искать подобные ошибки. Ответ отправлен: 28.04.2003, 15:33 Отправитель: Ayl Отвечает Sensey
Здравствуйте, Кирилл! :) Стандарная ошибка Var f: text; str:string; begin assign(f,'primer.txt'); Reset(f); While not Eof(f) do begin Readln(f,str); writeln(str); end; close(f); end.
Ответ отправлен: 26.04.2003, 16:21 Отправитель: Sensey Отвечает DoS@
Приветствую Вас, Кирилл! После строки "Writeln(str);" надо написать end;! Ответ отправлен: 28.04.2003, 23:14 Отправитель: DoS@ Отвечает Paulkan
Приложение: Ответ отправлен: 27.04.2003, 16:26 Отправитель: Paulkan
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.