#include <iostream>
#include <ctime>
using namespace std;
void random1(int* nPtr, int n) {
setlocale(LC_ALL, "UKR");
cout << "Вивiд першого масиву: " << endl << endl;
for (int i(0); i < n; i++) {
*(nPtr + i) = rand() % 9 + 1;
cout << *(nPtr + i) << " ";
}
cout << endl << endl << endl;
}
void random2(int* mPtr, int m) {
setlocale(LC_ALL, "UKR");
cout << "Вивiд другого масиву: " << endl << endl;
for (int i(0); i < m; i++) {
*(mPtr + i) = rand() % 10 + 1;
cout << *(mPtr + i) << " ";
}
cout << endl << endl << endl;
}
void Desiigner(int* mPtr, int* nPtr, int* xPtr, int x, int m, int n, int* aPtr) {
int k = 0;
for (int i(0); i < n; i++, k++) {
*(aPtr + i) = *(nPtr+i);
}
for (int i(0); i < m; i++) {
*(aPtr + k + i) = *(mPtr + i);
}
cout << "Вивiд нового масиву, який включає в собi перший i другий: " << endl << endl;
for (int i(0); i < m + n; i++) {
cout << *(aPtr + i) << " ";
}
cout << endl << endl << endl;
// Тепер починаю заповнення в основний масив, зі значенням х
int kof = 0;
int coc = 0;
for (int i(0); i < m + n; i++) {
for (int j(0); j < m + n; j++) {
if (*(aPtr + i) == *(aPtr + j)) {
kof++;
}
}
if (kof >= x) {
break;
}
if (kof < 2) {
*(xPtr + coc) = *(aPtr + i);
coc++;
}
kof = 0;
}
for (int i(0); i < x; i++) {
cout << *(xPtr + i) << " ";
}
cout << endl << endl << endl;
}
int main() {
srand(time(0));
setlocale(LC_ALL, "UKR");
int m, n, x;
cout << "Введiть кiлькiсть елементiв першого масиву: ";
cin >> m;
cout << endl;
cout << "Введiть кiлькiсть елементiв другого масиву: ";
cin >> n;
cout << endl << endl;
x = (m > n) ? n : m;
int* mPtr = new int[m];
int* nPtr = new int[n];
int* xPtr = new int[x];
int* aPtr = new int[m + n];
random1(nPtr, n);
random2(mPtr, m);
Desiigner(mPtr, nPtr, xPtr, x, m, n, aPtr);
delete[] xPtr;
delete[] mPtr;
delete[] nPtr;
delete[] aPtr;
system("pause");
return 0;
}
Привет. Такая проблема, что после строчки int coc=0; Цикл с вложенным, там xPtr выходит за рамки, не понимаю почему, можете помочь пожалуйста решить проблему, чтобы ошибка не появлялась. Рекомендую попробовать пару раз запустить, иногда работает нормально, а иногда ошибку выдает. Если точнее, то пишет Out of memory.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Я выполняю сложение float + floatМне надо в цикле прибавить к массиву типа float значение переменной Eps=0
Я хочу отдельный вывод в программе выделить с помощью цветовНо при использовании таких вариантов как например:
Есть ли в линукс какое нибудь оповещение, когда подключаешься к сети? Это для программированияЯ хочу отслеживать интерфейс например, но не знаю...