Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Привет всем! Кто-нибудь может помочь наводкой на хороший генератор комбинаций чисел? Того, что мне надо сам не нашёл.

За ПРАВДУ!!! Искусственный Интеллект (321718), закрыт 4 года назад
У меня есть семнадцать чисел:
3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32
Необходимо создать из них ВСЕ возможные ШЕСТИЗНАЧНЫЕ комбинации, т. е.:
1; 3; 12; 18; 34; 36;
3; 7; 8; 17; 18; 34;
и т. п. . Буду очень признателен за любую дельную наводку!
Лучший ответ
Xman Xmango Мыслитель (7685) 4 года назад
могу написать программу по комбинаторике.
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
Благодарю, но мне нужна наводка на готовый генератор.
Таких в сети много, но именно составляющего шестизначные связки всех возможных сочетаний чисел от единицы до 40 - не нашёл, увы (
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
На всякий случай, если ничего не найду: сколько может стоить написание Вами подобной программы?
Привожу конкретный пример:
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36;
Сегодня же, оказалось, что числа другие и их больше:
(всего 17):
3 12 13 17 18 34 36
1 6 7 8 14 16 22 28 31 32
и из них мне нужно создать ВСЕ возможные шестизначные сочетания, а также узнать КОЛИЧЕСТВО возможных ШЕСТИЗНАЧНЫХ сочетаний.
Xman Xmango Мыслитель (7685) Я вас понял. Тут ещё надо учесть, могут ли числа менять последовательность, т. е. 1,2,3,4,5,6 и 2,1,3,4,5,6 - можно считать как за одну комбинацию, а можно как за разные. В общем опыт у меня есть, пишите на почту: hotpus@mail.ru
Остальные ответы
11sen 11 Знаток (388) 4 года назад
на лабе такую прогу писали... вон 1 уже гготов написать
Mikhail Levin Искусственный Интеллект (615375) 4 года назад
вообще непонятно, о чем вы. Что такое "генератор чисел" bult у вас хоть одна шестизначная комбинация?

если вы про перестановки - так в С++ в STL есть генератор перестановок. Там все просто.
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
Привожу пример, (из того, чем мне вчера помогли, но, увы - данные запросы изменились, и это уже неактуально).
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36
За ПРАВДУ!!! Искусственный Интеллект (321718) Сегодня же, оказалось, что числа другие и их больше: (всего 17): 3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32 и из них мне нужно создать ВСЕ возможные шестизначные сочетания.
Вячеслав Бурмистров Оракул (94801) 4 года назад
#include
using namespace std;
void swap(int *a, int i, int j)
{
int s = a[i];
a[i] = a[j];
a[j] = s;
}
bool NextSet(int *a, int n)
{
int j = n - 2;
while (j != -1 && a[j] >= a[j + 1]) j--;
if (j == -1)
return false; // больше перестановок нет
int k = n - 1;
while (a[j] >= a[k]) k--;
swap(a, j, k);
int l = j + 1, r = n - 1; // сортируем оставшуюся часть последовательности
while (l<r)
swap(a, l++, r--);
return true;
}
void Print(int *a, int n) // вывод перестановки
{
static int num = 1; // номер перестановки
cout.width(3); // ширина поля вывода номера перестановки
cout << num++ << ": ";
for (int i = 0; i < n; i++)
cout << a[i] << " ";
cout << endl;
}
int main()
{
int n, *a;
cout << "N = ";
cin >> n;
a = new int[n];
for (int i = 0; i < n; i++)
a[i] = i + 1;
Print(a, n);
while (NextSet(a, n))
Print(a, n);
cin.get(); cin.get();
return 0;
}
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
Привожу пример, (из того, чем мне вчера помогли, но, увы - данные запросы изменились, и это уже неактуально).
Например, вчера у меня было 7 чисел подлежащих генерации, вот они:
3 12 13 17 18 34 36
А вот помощь, которую я получил:
по формуле 7!/6!*(7-6)!=7 сочетаний. 3,12,13,17,18,34; 3,12,13,17,18,36; 12,13,17,18,34,36; 3,13,17,18,34,36; 3,12,13,18,34,36; 3,12,17,18,34,36; 3,12,13,17,34,36
За ПРАВДУ!!! Искусственный Интеллект (321718) Сегодня же, оказалось, что числа другие и их больше: (всего 17): 3 12 13 17 18 34 36 1 6 7 8 14 16 22 28 31 32 и из них мне нужно создать ВСЕ возможные шестизначные сочетания.
Боевая печенька Просветленный (27496) 4 года назад
Я могу, проверишь, выйграешь, мне 10 процентов, но без обмана
Я . Гражданин . Советского СоюзаМыслитель (7482) 4 года назад
Я не обману если поможешь .Только я математике ноль
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
Сегодня уже поздно.
Результатов не прошу, но укажи, пожалуйста, хотя-бы, полное количество необходимых комбинаций. Если это будет реально для меня по деньгам - то к следующему тиражу (на этой неделе), обращусь к тебе.
Насчёт денег можешь не беспокоиться. Во всём мире никому ни одной копейки не должен.
За ПРАВДУ!!! Искусственный Интеллект (321718) Если на скрине ниже, правильное количество комбинаций, то это неактуально. Буду ждать меньшего количества цифр в тираже.
Сергей Черных Ученик (11) 4 года назад
Интернет в прмощь
За ПРАВДУ!!!Искусственный Интеллект (321718) 4 года назад
Я же написал в вопросе: того, что мне надо сам не нашёл.
Несколько часов потратил на поиски.
Macho007 Мудрец (19829) 4 года назад
готовых программ не найдешь, нужно писать под заказ!
Ник Вас Искусственный Интеллект (295465) 4 года назад
Написать программу - один час, но оно мне не надо
А драть с тебя деньги за такую ерунду - стыдно.
Chraiber Мудрец (12224) 4 года назад
Любой начинающий программист тебе это сделает за несколько часов. Поищи близко к дому.
Похожие вопросы