408 / 73 / 7
Регистрация: 29.01.2018
Сообщений: 1,140
1

Перестановки без повторений

15.08.2019, 13:54. Показов 2777. Ответов 4
Метки нет (Все метки)

привет


помогите пожалуйста найти файлик в котором бы были все перестановки из 5 элементов.


мне нужно проверить правильно ли я написал программу. буду сверять все перестановки для этого
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.08.2019, 13:54
Ответы с готовыми решениями:

Перестановки без повторений
Требуется дописать исключение повторений в коде,спасибо. #include <iostream> using namespace...

Перестановки без повторений
Как из этого кода сделать конфетку — чтобы не выводились повторения? #include <iostream> ...

Требуется написать перестановки без повторений
#include <iostream> using namespace std; const int N =11; int n,a,p; void f(int k){ if(k...

Выписать все перестановки без повторений
Тему копирую из раздела C#, из-за того что на си народу больше. Есть строка 0,1,2,3,4 и к...

4
609 / 414 / 151
Регистрация: 11.01.2019
Сообщений: 1,736
15.08.2019, 14:18 2
Такой файлик можно и вручную набить, всего 120 вариантов. Это не так уж много.
1
357 / 224 / 120
Регистрация: 25.06.2019
Сообщений: 828
15.08.2019, 14:24 3
Лучший ответ Сообщение было отмечено pcmax как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void variant(int n,char *vr,char *ch)
{
    for(int i=0; i<(int)strlen(ch); i++)
    {
        if(!strchr(vr,ch[i]))
        {
            vr[n]=ch[i];
            if(strlen(vr)==strlen(ch))
                cout<<vr<<endl;
            else variant(n+1,vr,ch);
            vr[n]=0;
        }
    }
}
void main(int argc,char **argv)
{
    char ch[]="12345";
    char vr[6]="";
    variant(0,vr,ch);
0
6320 / 4296 / 2464
Регистрация: 18.12.2017
Сообщений: 13,361
15.08.2019, 14:35 4
Лучший ответ Сообщение было отмечено pcmax как решение

Решение

pcmax, зайдите в тему:
Нужна программа для генерации предложений из заданных слов
примените код из сообщения №8 - там для 6 элементов. последнее слово и запятую перед ним уберите, можете заменить слова буквами a,b,c,d,e. надеюсь SomniPhobia будет не против.
0
567 / 406 / 132
Регистрация: 22.11.2017
Сообщений: 1,046
15.08.2019, 16:24 5
Лучший ответ Сообщение было отмечено pcmax как решение

Решение

Цитата Сообщение от Yetty Посмотреть сообщение
надеюсь SomniPhobia будет не против
Я не против.

Добавлено через 4 минуты
Yetty, вот, тот код, подредактированный под эту задачу.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <algorithm>
#include <string>
 
int main()
{
    std::string box("abcde");
    std::sort(std::begin(box), std::end(box));
    for (size_t idx = 0u;;)
    {
        std::cout << ++idx << " -> " << box << "\n";
        if (!std::next_permutation(std::begin(box), std::end(box)))
            break;
    }
 
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2019, 16:24

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Сгенерировать всевозможные перестановки N чисел без повторений
Условие задачи: Сгенерировать всевозможные перестановки N чисел без повторений. (Использовать...

Перестановки без i
Есть рекурсивная функция ,генерирующая перестановки.Требуется,чтобы на i месте(p) не стоял i.Причем...

Перестановка без повторений
Сгенерировать перестановку N чисел без повторений. Требуется использовать циклы. Функции пока не...

Рандом без повторений
Здравствуйте! Искал по форуме, но так и не нашел подходящее решение такой задачи: пользователь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.