Задание
Создать файл. Внести в него последовательность строчных и прописных латинских букв. Прочитывая символы из файла в одиночку, заменить все прописные буквы на строчных.
Теоретическая часть
Файлы бывают типизированные, нетипизированные, текстовые.
Например:
f: file;
f: file of integer;
f: text.
Для работы с файлами используются такие процедуры и функции:
Assign (f,’a.txt’) – присваивает файлу а.txt логическое имя f
Rewrite (f) – открытие файла для записи
Reset (f) – открыть файл для чтения
Close (f) – закрыть файл
Выбор алгоритма решения задачи
В данной задаче необходимо создать файл, внести у него латинские большие и малые буквы, закрыть его (при этом все что у него записывается хранится). После этого необходимо сделать цикл и переменить все малые буквы на прописных.
Описание решения задачи
Данную задачу можно развязать следующим способом: объявим файл типа char ff=file of char. Соединяем его с физическим диском assign(f, 'c:\14.txt'), создаем и открываем его Rewrite(f). После этого вносим у него необходимые символы и закрываем его close(f). После этого открываем его для записи и считывания reset(f). Делаем цикл пока нет конца файла и в этом цикле делаем условие, если буква строчная, то заменить ее на прописную.
Блок-схема
Текст програми
PROGRAM lab;
Type
ff=file of char;
VAR
i,j,x,y:byte;
f:ff;
c:char;
text:string;
begin
assign(f, 'c:\14.txt');
Rewrite(f);
reset(f);
write('vvedite Bol''shue i malen''kiye bykvi: ');
readln(text);
for i:=1 to length(text) do
write(f,text[i]);
close(f);
reset(f);
i:=0;
while (Eof(f)=false) do begin
read(f,c);
if (ord(c)>96) and (ord(c)<123) then begin
c:=Char(ord(c)-32);
Seek(f,i);
write(f,c);
end;
i:=i+1;
end;
close(f);
readln;
end.
Результати роботи програми
vvedite Bol'shue i malen'kiye bykvi: ab cd ef gh AND I
результат який в файлі: AB CD EF GH AND I