Cоставьте программу записывающую в файл закодированный текст, считывающую его и выполняющую дешифрование, если известен код шифрования - число,
10-11 класс
|
указывающее смещение букв в алфавите ( например, код 3 означает, что вместо буквы "а" в зашифрованном тексте указана буква "в"). Дешифрованный текст записать в другой файл.
var
sme: byte;
arrIn: array of byte;
boolEncode: boolean;
arrOut: System.Collections.Generic.List<byte> := new System.Collections.Generic.List<byte>();
begin
writeln('1 - encode; 2 - decode');
readln(sme);
boolEncode := (sme = 1);
write('Смещение: ');
readln(sme);
arrIn := System.IO.File.ReadAllBytes('out.txt');
foreach f: byte in arrIn do
arrOut.Add(f + (boolEncode ? -1 : 1) * sme);
System.IO.File.WriteAllBytes('out1.txt', arrOut.ToArray());
end.
======================
Алфавит, это, конечно, хорошо, но, бесспорно, будет лучше сделать более универтально: алфавит не только русским будет, ещё пункт. знаки, цЫфры, иврит...:)
Паскаль, друг, паскаль) Он популярен) Нет языка - пиши на паскале)
Комментарий удален
я же говорю, паскаль, сначала забыл указать
Другие вопросы из категории
Читайте также
хранится и одна страница машинописного текста примерно занимает 2,5 Кбайт), если:
Ёмкость (объём) дискеты: 1,2 Мб
Строк на странице: 40
Символов с строке: 60
Описать функцию у=arcsin(x), cоставить программу решения уравнения sin(ax+b)=c (Паскаль)
Программу сделать с помощью процедур
Текст набить вручную(не больше 10 слов).
pascal
экран должен очищаться , выводиться подсказка и программа должна возвращаться в начало. Условие для программы: Cоставьте программу , которая в зависимости от азимута, показываемого стрелкой компаса, определят страны света: север юг, воcток,запад.