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

Тема в разделе "Общие вопросы по С и С++", создана пользователем SvetOk, 23 сен 2010.

Статус темы:
Закрыта.
  1. SvetOk

    SvetOk Гость

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

    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));
    }
    необходимо создать битовое множество и каждый элемент массива представить как отдельное множество
    как это сделать?(
     
  2. alexsid

    alexsid Гость

    Вообще любое значение в массиве уже является битовым множеством. Так же как и весь массив целиком,
    или любая его подчасть.
    Не понятно, что нужно делать.
     
  3. DarkKnight

    DarkKnight Well-Known Member
    C\C++ Team

    Регистрация:
    1 авг 2010
    Сообщения:
    653
    Симпатии:
    0
    Ну тут автор хотел сказать что ему нужен принцип работы 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; //Искомый целочисленный элемент
    }

    }
     
  4. SvetOk

    SvetOk Гость

    спасибо огромное)
    именно это я и имела ввиду
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей