/*Создать класс, содержащий динамический массив
и количество элементов в нем. Добавить конструктор,
который выделяет память под заданное количество элементов,
и деструктор. Добавить методы, позволяющие заполнять массив
случайными числами, переставлять в данном массиве элементы
в случайном порядке, находить количество различных элементов
в массиве, выводить массив на экран.*/
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
class A
{
int* mas;
int n;
public:
A()
{
}
A(int s)
{
n = s;
mas = new int[n];
for (int i = 0 ; i<n; i++)
mas[i] = i;
}
void fill_random()
{
// srand (time(NULL));
for (int i = 0 ; i<n; i++)
mas[i] = rand() % 10;
}
void rand_shuffle()
{
int t,c;
for (int i = 0 ; i<n; i++)
{
t = rand()%n; // i = рандомное число от 0 до 9
c = mas[0]; //пузырьковая сортировка
mas[0] = mas[t];
mas[t] = c;
}
}
void show()
{
for (int i = 0 ; i<n; i++)
cout<<mas[i]<<'\t';
cout<<endl;
}
~A()
{
delete mas;
}
};
int main()
{
srand (time(NULL));
A t(8);
t.show();
t.rand_shuffle();
t.show();
t.rand_shuffle();
t.show();
t.rand_shuffle();
t.show();
return 0;
}