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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2008, 12:39   #1
Cawboy
 
Регистрация: 29.05.2008
Сообщений: 6
Восклицание Составление слова

Привет всем.
Как составить все возможные слова из всех возможных символов.
Спасибо.
Cawboy вне форума Ответить с цитированием
Старый 03.06.2008, 12:53   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Перебором по словарю )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2008, 13:21   #3
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Вот для слова длиной от 2 до 5.
Работает алгоритм при любом количестве букв, но в паскале будет переполнение массива, т.к. там 1!+2!+...+n! символов. Ну дык переходим тогда просто к динамическим переменным и всё
Код:
var
  variant: array[1..256] of string[5];
  i, j, k, c, n, m, st, fin:byte;
  s, s0, s1: string[5];
begin
  s := '12345';
  n := length(s);
  variant[1] := copy(s, 1, 1);
  c := 2; st := 1;
  m := 2; fin := 1;
  for i := 2 to n do begin
     s0 := copy(s, i, 1);
     for j := st to fin do begin
      for k := 1 to c do begin
        s1 := variant[j];
        insert(s0, s1, k);
        variant[m] := s1; {write(variant[m]:8);}
        inc(m);
       end;
     end;
     st := fin + 1;
     fin := m-1;
     inc(c);
  end;
  for i := 1 to m do if length(variant[i])=n then write(variant[i]:8);
  writeln;
  readln
end.
eoln вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Длина слова IGoDoVaN Общие вопросы Delphi 14 12.06.2008 08:04
Поиск 'Слова' JakSon Работа с сетью в Delphi 1 20.04.2008 00:13
Составление билетов(поправка рандома) Jodu Паскаль, Turbo Pascal, PascalABC.NET 23 09.04.2008 22:48
Составление диаграммы Иля Microsoft Office Excel 1 06.04.2008 18:08