Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/34: Рейтинг темы: голосов - 34, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16

Реализация алгоритма шифрования с помощью шифра с использованием десятибуквенного кодового слова

17.12.2015, 10:36. Показов 7299. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите, пожалуйста! Напишите программу (на знакомом вам языке
программирования), реализующую алгоритм шифрования с помощью шифра с использованием десятибуквенного кодового слова (например,
можно взять слово ЭВДЕМОНИСТ).
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.12.2015, 10:36
Ответы с готовыми решениями:

Шифрование с помощью шифра с использованием семибуквенного кодового слова
Напишите программу, реализующую алгоритм шифрования с помощью шифра с использованием семибуквенного кодового слова.

Реализация шифрования данных с помощью алгоритма MD5
Добрый времени суток. У меня возник вопрос, который не дает мне покоя. Сам вопрос заключается в следующем: как реализовать сам алгоритм...

Зашифровать послание с помощью шифра Цезаря с заданным шагом шифрования
Как известно, Цезарь тоже пользовался шифрованием сообщений, причем у него был свой способ. Сначала выбирается шаг шифрования (число), а...

13
Модератор
10422 / 5710 / 3401
Регистрация: 17.08.2012
Сообщений: 17,367
17.12.2015, 21:03
Программа зашифровывает и затем расшифровывает все строчные русские буквы в строке. Все прочие символы оставляет без изменения. Длина кодового слова может быть от 0 (тогда шифрования не произойдёт по понятным причинам) до количества символов в целевом алфавите.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
const symb = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
 
var key, skey, s: string;
    i: integer;
 
begin
  repeat
    writeln('Кодовое слово из неповторяющихся русских строчных букв длиной 0..', length(symb), ':');
    readln(key);
    skey := symb;
    for i := 1 to length(key) do
      if pos(key[i], skey) > 0
        then delete(skey, pos(key[i], skey), 1)
        else break
  until length(symb) - length(skey) = length(key);
  skey := key + skey;
  writeln('Введите строку:');
  readln(s);
  for i := 1 to length(s) do
    if pos(s[i], symb) > 0 then s[i] := skey[pos(s[i], symb)];
  writeln('Зашифрованная ситрока:');
  writeln(s);
  for i := 1 to length(s) do
    if pos(s[i], skey) > 0 then s[i] := symb[pos(s[i], skey)];
  writeln('Расшифрованная ситрока:');
  writeln(s);
  readln
end.
Добавлено через 2 минуты
Если нужны пояснения, или у Вас есть уточнения к заданию, пишите.
2
0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16
18.12.2015, 12:21  [ТС]
Спасибо большое!!!!!!!!!!!!

Добавлено через 34 минуты
Я Запускаю программу и вылетает ошибка в первой строке const symb = ('абвгдеёжзийклмнопрстуфхцчшщъыьэюя'); Что делать?
0
Модератор
10422 / 5710 / 3401
Регистрация: 17.08.2012
Сообщений: 17,367
18.12.2015, 14:37
Паскаль у Вас какой? И что за ошибка?
0
0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16
18.12.2015, 16:52  [ТС]
у меня лазарус, паскаля нет!
Миниатюры
Реализация алгоритма шифрования с помощью шифра с использованием десятибуквенного кодового слова  
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
18.12.2015, 22:35
fedorovavik, видимо в лазарусе синтаксис другой, скачайте ABC

Добавлено через 1 минуту
fedorovavik, там ожидалась команда "UNIT" ,а встречено "CONST"
0
Модератор
10422 / 5710 / 3401
Регистрация: 17.08.2012
Сообщений: 17,367
19.12.2015, 00:46
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Цитата Сообщение от Azazel-San Посмотреть сообщение
видимо в лазарусе синтаксис другой, скачайте ABC
Azazel-San, я понял. Вы не любите кошек, потому что не умеете их готовить.

Pascal ABC - это учебный паскаль, ублюдочная версия ABC.NET с урезанным функционалом, у которого ампутированы многие возможности, присущие другим диалектам паскаля. ABC без танцев с бубном даже исполняемого файла создать не может, потому что он не компилятор, а интерпретатор. На будущее советую Вам остерегаться рекомендовать этот диалект паскаля кому-либо, а если рекомендуете - оговаривайте, что этот паскаль годен только для обучения, и некоторые стандартные процедуры и функции, например, некоторые функции для работы с битами, у него отсутствуют, зато присутствуют дитячьи модули исполнителей (Чертёжник (DrawMan) и Робот (Robot)).

Lazarus - кроссплатформенная среда, включающая в себя Free Pascal и среду программирования, которая, кроме прочего, позволяет создавать оконные приложения. На лазарусе можно написать всё, что угодно. Также с помощью директивы компилятора MODE можно указать Лазарусу, на каком диалекте паскаля написана программа. Поддерживаются диалекты паскаля Free Pascal, Turbo Pascal (Borland Pascal), GNU Pascal, Object Pascal и Borland Delphi.

Ну да ладно.

fedorovavik, и у меня Лазарус, в нём и писано. Вероятно, Вы просто ещё недостаточно хорошо работаете с Лазарусом. По умолчанию кодовая странца у него - Unicode UTF-8, и в большинстве случаев получается так, что символьный тип не является перечисляемым.

Ваша ошибка в том, что Вы вставили код в Лазарус, когда он находился в режиме создания оконного приложения. Отсюда и возникла ошибка, поскольку в этом режиме обязательно используются библиотеки для работы с формами, диалогами, сообщениями операционной системы и тому подобные. Вы же вставкой кода затёрли секцию uses, вот Лазарус и обижается.

Для создания консольных приложений в Лазарус действуйте следующим образом (например):

- запустите Лазарус;
- Файл -> Закрыть всё;
- Файл -> Создать... -> Простая программа. "Сохранить изменения в поекте Project1?" -> Нет;
- нажмите правую кнопку мыши на поле для ввода кода. Параметры файла -> Кодировка -> CP866. "Файл Project1.lpr на диске имеет кодировку utf8. Новой кодировкой будет CP866." -> Изменить файл

Теперь копируйте/набирайте код, запускайте, всё запустится так, как нужно.

Добавлено через 6 минут

Не по теме:

Да, fedorovavik. Есть у Вас паскаль, да ещё и один из самых лучших. Не говорите, что у Вас нет паскаля, а говорите, что у Вас Лазарус.

2
0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16
19.12.2015, 08:37  [ТС]
Спасибо большое за помощь!Просто я совсем ничего не понимаю,как в паскале ,так и лазарусе,но надо делать каким-то образом задания,которые задают!Вот и мучаюсь)
0
Mental handicap
 Аватар для Azazel-San
1246 / 624 / 171
Регистрация: 24.11.2015
Сообщений: 2,429
19.12.2015, 11:18
Cyborg Drone, бомбануло?
Иммел введу не ABC, a ABC.net не думал что обычным ABC кто-то пользуется в 2045
0
0 / 0 / 0
Регистрация: 17.12.2015
Сообщений: 16
19.12.2015, 11:27  [ТС]
Я скачала паскаль,все получилось!!!!!Спасибо!
0
20.12.2015, 01:38

Не по теме:

Цитата Сообщение от Azazel-San Посмотреть сообщение
Иммел введу не ABC, a ABC.net не думал что обычным ABC кто-то пользуется
Подозреваю, ничего такого Вы не имеели ввиду. Различия между ABC и ABC.NET примерно такие же, как между игрушечным пистолетом и боевым оружием. Вот что-то сомневаюсь я, что Вы что-то перепутали. Я бы, например, не стал никому предлагать отбиваться от врагов игрушечным пистолетом.

И, кстати, ABC пользуются. И даже Turbo Pascal (и Borland Pascal) до сих пор в ходу. Наряду с ABC их используют при обучении программированию. Наша система образования весьма инертна. Кстати, ABC появился позже ABC.NET. И у него есть умышленно спроектированное достоинство: лёгкость его изучения.

Насчёт ABC.NET. К сожалению, во многом не очень хороший диалект паскаля, так как заточен сугубо под Windows (платформа .NET), добавлены регулярные выражения, добавлены конструкции, противоречащие классическому паскалю. Для виндузятников он весьма хорош, для остальных - бесполезен. Это ещё один аргумент в пользу того, что Вы где-то слукавили: ну никак нельзя рекомендовать спциализированный диалект языка для написания учебных программ.

Ну и, про Лазарус. Его универсальность (кроссплатформенность) не всегда позволяет писать эффективный код под целевую платформу.

Я вообще считаю, что программы нужно писать на том языке и на том диалекте языка, который больше всего подходит для поставленной задачи.

Прошу Вас, если это возможно, впредь постарайтесь называть вещи своими именами, поскольку то, что Вы считаете очевидным, многие могут поставить под сомнение. Зачем Вам попадать в неловкие ситуации, доказывая, к примеру, что Вы имели ввиду велосипед, а не велотренажёр?

0
20.12.2015, 11:13

Не по теме:

Cyborg Drone, Хехе, учёбы? Ну как бы да, Паскаль в большинстве случаев используют для учёбы и по-моему АБЦ в этом хорош, мне и на Турбо норм, но мне АБЦ понравился своей простотой и интерфейсом, и считаю что выбирать среду для программирования если ты в ней разбирается ещё меньше чем в самом языке программирования - глупо. Но что интересно я ничего такого плохого о Лазаруса не говорил из-за чего могло бы у вас так пригореть.. И ещё занятно то что писать огромные тексты у вас время есть, а помочь людям (конкретно мне) некому(

0
Модератор
10422 / 5710 / 3401
Регистрация: 17.08.2012
Сообщений: 17,367
20.12.2015, 11:41

Не по теме:

После модерирования разделов и попутного написания огромных текстов у меня остаётся мало времени на помощь. А вот помогаю я в порядке очереди: увидел тему, взял да и помог, повторяю до тех пор, пока возможно. Если честно, конкретно Вам помогать как-то и не задумывался, поскольку Вы сами пишете программы вполне прилично.



Добавлено через 1 минуту

Не по теме:

Да, и насчёт ABC Вы правы: пожалуй, как раз его и нужно рекомендовать для обучения.

0
20.12.2015, 19:06

Не по теме:

Cyborg Drone, да не в самой программе дело, очень помощь нужна в том что не понимаю задания + это графика, а я в ней плохо разобрался, и вот тут то у меня возникла проблема с синтаксисом, ну лан если что загляните ко мне в тему..

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2015, 19:06
Помогаю со студенческими работами здесь

Шифр с использованием кодового слова
Срочно нужно написать приложение к курсовой, шифр с использованием кодового слова. Ничего совершенно в этом не понимаю. Помогите, если не...

Шифр с использованием кодового слова - Ошибка проверки диапазона
добрый день,пытаюсь реализовать на паскале шифр с использованием кодового слова, начал с замены алфавита, но постоянно выскакивает ошибка...

Реализация алгоритма шифрования MQV
Всем доброго времени суток! Столкнулся с проблемой при реализации алгоритма шифрования MQV. Гуглинг, к сожалению, кроме ссылок на...

Реализация алгоритма шифрования IDEA
нашла реализацию алгоритма шифрования IDEA ,выдает 2 ошибки,не знаю как исправить,чтоб работало strncpy: невозможно преобразовать...

Реализация алгоритма шифрования и дешифрования Serpent.
Помоги сделать!!! Реализация алгоритма шифрования и дешифрования Serpent.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru