#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
class Massiv {
private:
int* arr;
int n;
public:
Massiv() {
n = rand() % 10 + 4;
arr = new int[n];
for (int i = 0; i < n; i++)
arr[i] = rand() % 50;
}
Massiv(int razmer, int* massivchik) {
n = razmer;
arr = new int[n];
for (int i = 0; i < n; i++)
arr[i] = massivchik[i];
}
Massiv(const Massiv& m) {
n = m.n;
arr = new int[n];
for (int i = 0; i < n; i++)
arr[i] = m.arr[i];
}
~Massiv() {
delete[] arr;
cout << n;
}
void vivod() {
for (int i = 0; i < n; i++)
cout << arr[i] << " ";
cout << endl;
}
void proverka(int m) {
cout << m << ": ";
int count=0;
for (int i = 0; i < n; i++) {
if (arr[i] == m * m) {
cout << " " << i+1 << "->" << arr[i] << " ";
count++;
}
}
if (count ==0) {
cout << "takih net";
}
cout << endl;
}
};
int main() {
srand(time(0));
Massiv a;
cout << "a po umolchaniyu: ";
a.vivod();
int arrrray[] = {16,4, 15, 9, 25, 16, 7, 16};
Massiv b(8, arrrray);
cout << "b s parametrami: ";
b.vivod();
Massiv c {b};
cout << "c kopiya b: ";
c.vivod();
cout << "v a kvadrati ";
a.proverka(5);
cout << "v b kvadrati ";
b.proverka(4);
cout << "v c kvadrati ";
c.proverka(3);
return 0;
}