Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
DmitryV555
2 / 2 / 0
Регистрация: 14.02.2017
Сообщений: 126
1

Подмножества множества

13.02.2019, 13:36. Просмотров 140. Ответов 1
Метки нет (Все метки)

Здравствуйте, можете пожалуйста объяснить работу этого кода? Желательно поподробнее, что делает цикл while. Буду очень благодарен.
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
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <string>
#include <ctime> 
using namespace std;
 
 
int main()
{
    setlocale(LC_ALL, "");
    srand(time(0));
    const int N = 3;
 
    int A[N];         
    for (int i = 0; i < N; i++)
        A[i] = i + 1;
    int a[N] = { 0 };   
    int counter = 0; 
    while (a[0] != 2) 
    {
        for (int i = 0; i < N; i++)
            if (a[i]) 
                cout << A[i] << ' ';
        cout << endl;
 
        a[N - 1]++;
        for (int i = N - 1; i > 0; i--) 
            if (a[i] == 2) 
            {
                a[i - 1]++;
                a[i] = 0;
            }
        counter++;
    }
    cout << "Всего подмножеств: " << counter << endl;
    cout << "Время = " << clock() / 1000.0 << endl;
    system("pause");
}
Добавлено через 1 минуту
C++
1
cout << "Время = " << clock() / 1000.0 << endl;
И правильно ли что время делится на 1000?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2019, 13:36
Ответы с готовыми решениями:

подмножества и множества
Разработать алгоритм генерации всех подмножеств n-элемента множества Помогите решить ее!

множества подмножества
Помогите пожалуйста!!! Мне нужна программа этот алгоритмa ......C++..... Пусть есть набор...

Напечатать все подмножества множества {1...k}
Замучилась это делать - ничего не получается! Помогите кто-нибудь!

Перечислить все подмножества n элементного множества {1,2,.,n}
Помогите пожалуйста написать программу для этой задачи: Перечислить все подмножества n элементного...

Подмножества множества (как работает программа?)
Есть код, который выводит подмножества множества. Объясните, если можно поподробнее, как всё в этой...

1
Михаиллллллл
64 / 55 / 13
Регистрация: 16.03.2017
Сообщений: 426
13.02.2019, 19:15 2
1000 миллисекунд это одна секунда

Добавлено через 6 минут
пока a[0] не равен 2 делает:
это for (int i = 0; i < N; i++)
if (a[i])
cout << A[i] << ' ';
cout << endl;
выводит все члены A
это a[N - 1]++; прибавляет к a[2] единицу
это for (int i = N - 1; i > 0; i--)
if (a[i] == 2)
{
a[i - 1]++;
a[i] = 0;
}
в обратном порядке проходит по а и прибавляет a[i - 1] единице, а a[i] приравнивает нулю
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2019, 19:15

Разбиение множества на подмножества с одинаковыми суммами
Здраствуйте. Есть такая задача: разбить последовательность чисел от 1 до n * n на n подмножеств...

Как можно получить все подмножества множества?
Например из множества, представлнного массивом должны получиться подмножества:

Создайте процедуру, печатающую все подмножества множества {1, 2, …, N}
Создайте процедуру, печатающую все подмножества множества {1, 2, …, N}. c++


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

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

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