Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2018, 02:49   #1
HacerHelpPlis
Новичок
Джуниор
 
Регистрация: 25.11.2018
Сообщений: 2
По умолчанию Нет перегруженной подпрограммы с такими типами параметров

Снимок.jpg
Код:
program cal;
 
const
  alfa: string = ' АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';
 
begin
  var c, k, g, v, l: string;
  var q, p, n, H0, H1, H11, H2, H12, H3, H13, H4, H14, H5, H15: integer;
  WriteLn('Введите 5 букв:');
  ReadLn(c);
  ReadLn(k);
  ReadLn(v);
  ReadLn(l);
  ReadLn(g);
  WriteLn('Индексы первый символ M1 = ', alfa.IndexOf(c));
  WriteLn('Индексы первый символ M2 = ', alfa.IndexOf(k));
  WriteLn('Индексы первый символ M3 = ', alfa.IndexOf(v));
  WriteLn('Индексы первый символ M4 = ', alfa.IndexOf(l));
  WriteLn('Индексы первый символ M5 = ', alfa.IndexOf(g));
  p := random(100);
  WriteLn('Выбранное случайное целое число p =', p);
  q := random(100);
  WriteLn('Выбранное случайное целое число q =', q);
  n := p * q;
  WriteLn('Модуль n =', n);
  H0 := random(100);
  WriteLn('Пусть H0 будет равен ', H0);
  H1 := sqr(H0 + c);
  H11 := H1 mod n;
  WriteLn('Число нашего уравнения H1 =', H11);
  H2 := sqr(H11 + c);
  H12 := H2 mod n;
  WriteLn('Число нашего уравнения H2 =', H12);
  H3 := sqr(H12 + c);
  H13 := H3 mod n;
  WriteLn('Число нашего уравнения H3 =', H13);
  H4 := sqr(H13 + c);
  H14 := H4 mod n;
  WriteLn('Число нашего уравнения H4 =', H14);
  H5 := sqr(H14 + c);
  H15 := H5 mod n;
  WriteLn('Число нашего уравнения H5 =', H15);
end.
HacerHelpPlis вне форума Ответить с цитированием
Старый 25.11.2018, 03:06   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

И что вы ожидаете получить прибавляя букву к числу, а потом еще и возводя это в квадрат?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 25.11.2018, 03:21   #3
HacerHelpPlis
Новичок
Джуниор
 
Регистрация: 25.11.2018
Сообщений: 2
По умолчанию

При построении хеш-образа входная последовательность M разбивается
на блоки Mi фиксированной длины и обрабатывается по блочно по формуле:
Hi = f(Hi−1, Mi)
Хеш-значение, вычисленное в результате обработки последнего блока сообщения, становится хеш-образом всего сообщения.
В качестве примера рассмотрим упрощенный вариант хеш-функции следующего вида:
Hi = (Hi−1 + Mi)2 mod n,
где n = p•q, p и q – большие простые числа, H0 – произвольное начальное значение, Mi – i-й блок сообщения M = {M1, M2, …, Mk}.
Например, вычислим хеш-образ для строки "БГУИР". Для перехода от символов к числовым значениям будем использовать следующее соответствие: 'А' – 1, 'Б' – 2, 'В' – 3, …, 'Я' – 33. Тогда сообщение M примет вид M = {2, 4, 21, 10, 18}. Выберем два простых числа p = 17и q = 19, тогда модуль n = 323. Пусть H0 будет равен 100. Тогда используя формулу получим:
H1 = (H0+M1)2 mod n = (100+2)2 mod 323=10404 mod 323 = 68,
H2 = (H1+M2)2 mod n = (68+4)2 mod 323 = 5184 mod 323 = 16,
H3 = (H2+M3)2 mod n = (16+21)2 mod 323 = 1369 mod 323 = 77,
H4 = (H3+M4)2 mod n = (77+10)2 mod 323 = 7569 mod 323 = 140,
H5 = (H4+M5)2 mod n = (140+18)2 mod 323 = 24964 mod 323 = 93.
Таким образом, хеш-образ сообщения "БГУИР" будет h(M)=H5=93.
HacerHelpPlis вне форума Ответить с цитированием
Старый 25.11.2018, 05:10   #4
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Надо прибавлять не c, а
Код:
ord(c) - ord('А') + 1
Black Fregat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка ((17) : Нет перегруженной подпрограммы с таким количеством параметров Val') Юликс Помощь студентам 1 12.04.2017 11:02
При компилировании программы выводит ошибку: "Нет перегруженной подпрограммы с такими типами параметров". Oryn1k Паскаль, Turbo Pascal, PascalABC.NET 7 06.03.2017 16:46
Подпрограммы (free Pascal): объяснить механизм передачи параметров и назвать правило соответствия формальных и фактических параметров Jon_Morgan Помощь студентам 1 28.12.2016 08:38
При компиляцыи выдает ощыбку в 63-й сроке мол "Нету перегруженой системы с такими типами параметров" ПОМОГИТЕ makkalister1999 Помощь студентам 1 16.12.2016 19:15
нет перегруженной функции, принимающей 2 аргументов Ghostik Visual C++ 2 10.04.2012 15:06