Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Пример выполнения задания. Рассмотрим пример программы, которая в интерактивном диалоговом режиме обеспечивает выполнение действий по созданию⇐ ПредыдущаяСтр 14 из 14 Рассмотрим пример программы, которая в интерактивном диалоговом режиме обеспечивает выполнение действий по созданию, расширению и выводу текстового файла. Алгоритм программы приведен на рис. 7.1.
Рис. 7.1. Схема работы алгоритма основной программы обработки текстовых файлов.
Для того чтобы иметь возможность многократно выполнять различные действия по обработке файлов, в программе организован бесконечный цикл, выход из которого обеспечивается специальной процедурой прерывания программы. В выводимом в начале каждого шага цикла небольшом меню предлагается выбрать режим работы с файлом и в зависимости от значения введенной переменной k осуществляется создание, вывод или расширения файла. Текст программы будет иметь следующий вид: {Цель: создание, расширение и вывод текстовых файлов } {Подпрограммы: obrt- чтения и вывода файла} { rasht – расширение файла } { sozdt – создание файла } program textfiles; uses crt; type dlina=string[60]; var ft: text; {файловая переменная } s: dlina; {промежуточная переменная } rej: char; {селектор режима } filename: string[14];{имя файла }
{процедура чтения и вывода файла} procedure obrt (var stro:text); begin write ('имя выводимого файла'); readln(filename); assign(stro, filename); {$I-} reset (stro); if IOResult<>0 then begin writeln('файл ',filename,'не существует'); exit; end; {$I+} while not seekeof(stro) do begin readln(stro, s); writeln(S); end; end;
{процедура расширения файла} procedure rasht (var stro:text); begin repeat write ('имя расширяемого файла'); readln(filename); assign(stro, filename); {$I-} Append(stro); {$I+} until IOResult=0; while true do begin writeln('введите строку'); if s='zzz' then begin close(stro); exit; end; writeln(stro, s); end; end;
{процедура создания файла} procedure sozdt (var stro:text); begin write ('имя создаваемого файла'); readln(filename); assign(stro, filename); rewrite(stro); while true do begin writeln('введите строку (zzz-окончание ввода)'); readln(s); if s='zzz' then begin close(stro); exit; end; writeln(stro, s); end; end;
begin while true do begin clrscr; writeln('укажите режим'); writeln('1: создание текстового файла'); writeln('2: вывод текстового файла'); writeln('3: расширение текстового файла'); writeln('4: выход из программы'); readln(rej); case rej of '1': sozdt(ft); '2': obrt(ft); '3': rasht(ft); '4': halt; else writeln('повторите ввод номера'); end; writeln('для продолжения нажмите Enter'); readln; end;
end.
|