создание битовых полей и множеств

  • Автор темы SvetOk
  • Дата начала
Статус
Закрыто для дальнейших ответов.
S

SvetOk

#1
есть двумерный массив.

i
C++:
nt **mas;

mas=new int*[n];
for (i=0;i<n;i++)
mas[i]=new int[n];

for (i=0;i<n;i++)
for (j=0;j<n;j++)
{
mas[i][j]=(rand()%(100));
}
необходимо создать битовое множество и каждый элемент массива представить как отдельное множество
как это сделать?(
 
A

alexsid

#2
необходимо создать битовое множество и каждый элемент массива представить как отдельное множество
как это сделать?(
Вообще любое значение в массиве уже является битовым множеством. Так же как и весь массив целиком,
или любая его подчасть.
Не понятно, что нужно делать.
 

DarkKnight

Well-known member
01.08.2010
653
0
#3
Ну тут автор хотел сказать что ему нужен принцип работы std::bitset

C++:
#include <iostream>
#include <bitset> //STL BitSet - битовое множество

using namespace std;

int main(void)
{
const int n = 10; //Что бы под автора программу подогнать

std::bitset<16> s[n][n]; //Массив битовых множеств [n][n] - такой подход не самый лучший, но так как автор хочет динамический двумерный массив
//Пусть так и будет,
//Кстати, автор использует целочисленый массив int, поэтому, а он 2х байтовый, поэтому использую <16> - тоесть 16 байт


int **mas;

mas=new int*[n];

for (int i=0;i<n;i++)
mas[i]=new int[n];

for (int i=0;i<n;i++)
for (int j=0;j<n;j++)
{
mas[i][j]=(rand()%(100));
s[i][j] = mas[i][j]; //Записываю элемент массива
cout<<"Element["<<i<<"]"<<"["<<j<<"] = "<<s[i][j].to_string(); //Вывожу на экран битовое множество
cout<<"\t ("<<mas[i][j]<<")"<<endl; //Искомый целочисленный элемент
}

}
 
S

SvetOk

#4
спасибо огромное)
именно это я и имела ввиду
 
Статус
Закрыто для дальнейших ответов.