| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Комбинации чисел |
| Автор: Georg4 27.2.2003, 09:04 |
| Есть вопрос. Дано 20 разных чисел в диапазоне скажем от 1 до 40 Нужно перебрать все комбинации по 2 числа в каждой |
| Автор: Fedor 27.2.2003, 16:48 |
| А алгоритм полного перебора с возвратами тебе не подойдет? Если подойдет, то это - минутное дело... |
| Автор: Alex101 27.2.2003, 18:57 |
| для i от 1 до 20 для j от 1 до 20 выдать m[i],m[j] Это для двух, а для комбинации по N чисел удобнее с рекурсией В m хранятся твои числа, если в комбинации не должно быть элементов с одинаковыми номерами (или одинаковыми значениями), то ставь условие А для N будет примерно так: Комбинация(num) для i от 1 до 20{ добавить m[i] если num==N то выдать комбинацию иначе Комбинация(num+1) } Вызывается Комбинация(1) Тут еще важно, что ты понимаешь под комбинацией - сочетание или размещение. А вообще, этот вопрос скорее для раздела "Технологии и алгоритмы" |
| Автор: Georg4 28.2.2003, 08:49 |
| Вот мне как раз и нужен полный перебор вариантов из указанного списка. Только количество чисел в одном варианте нужно делать изменяемым( как в новых версиях PWL tools, просто дана строка исходных символов из которых подбирается пароль,( допустим это все символы английского алфавита и числа,) и выставляется мксимальное минимальное значение строки пароля и он уже перебирает только величины этого диапазона) |