Доделать программу шифр по книге - Pascal ABC
Формулировка задачи:
суть вот в чем, есть 3 файла in.txt out.txt и sh.txt
в файле sh.txt находятся в строчку символи абв...яАБВ...я1234567890_, программа берет символы из файла in.txt находит символ в sh.txt и записывает вместо в out.txt номер символа
например
in.txt содержит авд, после выполнения программы out.txt будет содержать 135
Решение задачи: «Доделать программу шифр по книге»
textual
Листинг программы
var n: integer;
i:integer;
f,g,h:text;
st,st1,st2:string;
begin
assign(f,'in.txt');
assign(g,'out.txt');
assign(h,'sh.txt');
reset(f);
reset(h);
rewrite(g);
readln(h,st);
close(h);
while not eof (f) do
begin
readln(f,st1);
st2:='';
for i:=1 to length(st1) do
st2:=st2+inttostr(pos(st1[i],st))+' ';//пробелы чтобы легче проверять тестовый файл,
// их после тестирования нужно убрать
writeln(g,st2);
end;
close(f);
close(g);
write('Файл in.txt прочитан преобразованные строки записаны в файл out.txt')
end.
Объяснение кода листинга программы
- Переменная n и i инициализируются целочисленными значениями без конкретного назначения.
- Переменные f, g и h инициализируются текстовыми значениями без конкретного назначения.
- Строки st, st1 и st2 инициализируются строковыми значениями без конкретного назначения.
- Функция assign устанавливает значения переменных f, g и h для чтения из файлов 'in.txt', 'out.txt' и 'sh.txt' соответственно.
- Функция reset сбрасывает буферы чтения и записи для переменных f и h.
- Функция rewrite записывает пустую строку в переменную g, которая будет использоваться для записи результатов.
- Функция readln считывает строку из переменной f и сохраняет ее в переменной st1.
- Закрывается переменная h.
- В цикле while считывается следующая строка из переменной f и сохраняется в переменной st1.
- Переменная st2 инициализируется пустой строкой.
- Для каждого символа в строке st1, переменная st2 увеличивается на единицу и к ней добавляется позиция текущего символа в строке st1.
- Функция inttostr преобразует целое число в строку.
- Функция pos возвращает позицию текущего символа в строке.
- Строка st2 записывается в переменную g.
- Цикл while завершается, когда достигается конец файла f.
- Закрываются переменные f и g.
- Выводится сообщение 'Файл in.txt прочитан, преобразованные строки записаны в файл out.txt'.