
МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра ЭПУ
отчет
по лабораторной работе №6
по дисциплине «Информационные технологии»
Тема: «Алгоритм генерирования подмножеств»
Студент гр. 1205 |
|
Агеев А.А. |
Преподаватель |
|
Ларионов И. А. |
Санкт-Петербург 2022
Цель работы: решить задачи по реализации алгоритма генерирования подмножеств, проверить корректность результатов работы программы.
Блок-схемы:
Рисунок 1 – блок-схема алгоритма генерирования подмножеств
Код программы:
1) Генерирование подмножеств #include <iostream>
#include <cmath>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
int N; //размерность
cout << "Введите размерность массива: ";
cin >> N;
int* A = new int[N];
int k = pow(2, N);
for (int i = 0; i < N; i++) {
cout << endl << "Введите значение массива A[" << i << "]: ";
cin >> A[i];
}
cout << endl;
for (int i = 0; i < k; i++) {
cout << "{ ";
for (int j = 0; j < N; j++) {
if (i & (1 << j)) cout << A[j] << " ";
}
cout << "}" << endl;
}
return 0;
}
Листинг результатов:
Генерирование подмножеств:
Рисунок 2 – результат работы алгоритма генерирования подмножеств
Выводы: написаны программы, выведены результаты.