Форум программистов, компьютерный форум, киберфорум
Наши страницы

Полный перебор чисел массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нахождение значения выражения для n корней http://www.cyberforum.ru/cpp-beginners/thread1050485.html
Нахождение значения выражения для n корней. (с использованием рекурсии)
C++ нужно что бы выводило количество каждой буквы и строки #include <string> #include <iostream> int main() { std::string vowel = "AaEeIiOoUuYy"; std::string str; std::cout << "Enter string" << std::endl; std::cin >> str; http://www.cyberforum.ru/cpp-beginners/thread1050480.html
C++ Какой из N треугольников, заданных координатами своих вершин, имеет больший периметр?
какой из N треугольников, заданных координатами своих вершин, имеет больший периметр?
Перевернуть строки в матрице C++
Дан двумерный массив A размера mXn. Перевернуть каждую его третью строку.
C++ Задача http://www.cyberforum.ru/cpp-beginners/thread1050470.html
Рекомендации к задаче: 1. Имя файла задавать в командной строке. Если оно там не был задан, то после соответствующего запроса имя вводится пользователем. 2. Использовать динамическое...
C++ файлы в С file=fopen("file.txt","r"); for(i=0;;i++) {do {n=fgetc(file); printf("%c",n); } while (n!=EOF); break;} fclose (file); подробнее

Показать сообщение отдельно
Roodey
4 / 4 / 1
Регистрация: 23.05.2013
Сообщений: 36

Полный перебор чисел массива - C++

21.12.2013, 04:13. Просмотров 2205. Ответов 4
Метки (Все метки)

Доброго вам времени суток.
Количество элементов массива задавать вручную - собственно N.
Массив заполняется числами от 1 до N.
Стоит задача, выполнить полный перебор массива чисел с первым элементов равным 1.

То есть:
Задаем массив из, допустим, 4 элементов, на выходе должны получить:
1 2 3 4
1 2 4 3
1 3 2 4
1 3 4 2
1 4 2 3
1 4 3 2

Если массив из 5 элементов, чисел и итераций будет соответственно больше, а именно 24.
А из 3 элементов получим всего 2.
1 2 3
1 3 2

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
 
using namespace std;
 
int fact=1, f;
int n, i, j;
void factorial(int f)
{
        for(i=0; i<n-1; i++)
        {
            fact=fact*f;
            f=f-1;
        }
    cout<<endl<<"факториал = "<<fact<<endl;
}
 
int main()
{
    cout<<"введите n: ";
    cin>>n;
 
    f=n;
    factorial(f);
 
    int i1;
    i1=fact/n;
 
    cout<<"количество итераций = "<<i1<<endl<<endl;
 
    int a[n];
    for(i=1; i<=i1; i++)
    {
 
        for(j=1; j<=n; j++)
        {
            a[j]=j;     //просто для примера, должно быть что-то другое
            cout<<a[j];
        }
        cout<<endl;
    }
}
Проблема заключается в том что не могу придумать как именно сделать этот перебор...
И потому на выходе пока получаю:
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4

Надеюсь на вашу помощь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.