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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2011, 14:48   #1
LatuSerge
 
Регистрация: 18.04.2011
Сообщений: 7
По умолчанию Как заполнить StringGrid русским алфавитом рандомно без повтора буквы

Как заполнить StringGrid размерностью 5х7 русским алфавитом в случайном порядке так чтобы буквы не повторялись(Delphi 7). Вообще конечно желательно сделать вот что:
Шифр «Полибианский квадрат». Такое название шифр получил благодаря его изобретателю – греческому историку Полибию. Ключом являлся квадрат размерностью 5×5, который заполнялся алфавитом в случайном порядке. Для шифрования в квадрате Полибий находил букву текста и вставлял в шифровку нижнюю от нее в том же столбце. Если буква была в нижней строке – то для шифровки он выбирали верхнюю из того же столбца.

Но я вообще не пойму как это сделать((((((((

Последний раз редактировалось LatuSerge; 18.04.2011 в 15:00.
LatuSerge вне форума Ответить с цитированием
Старый 18.04.2011, 15:04   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

если не ошибаюсь, то в русском языке 33 буквы... значит матрицу 5x7 полностью, без повторов тяжко будет заполнить
ну а так всё просто - заполняйте массивчик A : array[1..33] of char;
буковками от А до Я
тщательно перемешивайте. (примеры перемешивания смотри на форуме)
результат копируйте в Ваш StringGrid...
всё.


Добавлено
посмотрите вот тут ПОСТ
(там и пример есть и ссылочки полезные)...

Последний раз редактировалось Serge_Bliznykov; 18.04.2011 в 15:22.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.04.2011, 15:45   #3
GoodDA
фрилансер
Форумчанин
 
Аватар для GoodDA
 
Регистрация: 18.07.2008
Сообщений: 107
По умолчанию

заполнить можно так,
только пробелы потом заполнить чемнить еще
и букву Ё отдельно добавить

Код:
procedure TForm1.Button1Click(Sender: TObject);
var b:char;
x,y:integer;
begin
randomize;
 for b:='а' to 'я' do
 begin
  repeat
   x:=random(5)+1;
   y:=random(7)+1;
  until (stringgrid1.Cells[x,y]='');
  stringgrid1.Cells[x,y] :=b;
 end;
end;
GoodDA вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с русским алфавитом 0479 Общие вопросы по Java, Java SE, Kotlin 4 09.11.2010 23:12
как заполнить массив рандомно ronny137 Помощь студентам 9 02.05.2010 21:25
"Шифр Цезаря" на СИ, проблема с русским алфавитом Antowka Помощь студентам 9 30.01.2010 18:32
Рандомно заполнить столбец( gred БД в Delphi 1 15.06.2009 10:00
Как соеденить два файла, без повтора слов!! Окоча Юра Microsoft Office Word 3 07.03.2009 02:17