Ответ:
Вот вариант для массива чисел.
Объяснение:
Правда, сейчас никто такое не делает. Если нужен массив, то пользуются вектором из STL или boost, где всё уже давно реализовано для объектов любого типа, и есть соответствующие функции. Если это просто учебная лаба на указатели и циклы, то примерно такое будет.... Кроме требуемых функций (add, delete, insert) добавлены еще функции (input, output и main) для отладки.
#include <new>
#include <iostream>
using namespace std;
void inputArr(int* pArr, int len)
{
// Функция для инициализации массива из стандартного потока ввода
// pArr - указатель на зарезервированную память (первый элемент массива)
// len - количество элементов массива
for (int i = 0; i < len; ++i)
cout << " Input a[" << i << "]:";
cin >> pArr[i];
}
void outPutArr(int *pArr, int len)
// Функция для вывода элементов массива
// pArr - указатель на первый элемент массива
for (int i = 0; i < len; i++) {
cout << " a[" << i << "]=" << pArr[i] << 'n';
int addBlockToArr(int** pArr, int lenArr, const int* pBlock, int lenBlock)
// pArr - указатель на указатель на первый элемент массива
// pBlock - указатель на первый элемент блока
// lenArr, lenBlock - количество элементов массива
// функция возвращает длину нового массива
int lenNew = lenArr;
if (lenBlock > 0)
lenNew = lenArr + lenBlock;
int* resArr = new int[lenNew];
for (int i = 0; i < lenArr; ++i)
resArr[i] = (*pArr)[i];
for (int i = 0; i < lenBlock; ++i)
resArr[i + lenArr] = pBlock[i];
delete[] *pArr;
*pArr = resArr;
return lenNew;
int deleteBlock(int** pArr, int lenArr, int beginIdx, int endIdx)
// beginIdx, endIdx - начальный и конечный индексы удаляемых элементов массива
int beg = beginIdx > 0 ? beginIdx : 0;
int end = endIdx < lenArr - 1 ? endIdx : lenArr - 1;
int lenDel = end - beg + 1;
if (lenDel > 0)
lenNew = lenArr - lenDel;
int indNew = 0;
if ((i < beg) || (i > end))
resArr[indNew++] = (*pArr)[i];
int insertBlock(int** pArr, int lenArr, int insIdx, const int* pBlock, int lenBlock)
// lenArr, lenBlock - длина массива, длина блока
// insIdx - после, которого будет вставлен блок
// pBlock - указатель на начало блока
if (insIdx >= lenArr - 1)
lenNew = addBlockToArr(pArr, lenArr, pBlock, lenBlock);
else
int ins = insIdx < 0 ? 0 : insIdx;
for (int i = 0; i < ins + 1; ++i)
resArr[i + ins + 1] = pBlock[i];
for (int i = ins + 1; i < lenArr; ++i)
resArr[i + lenBlock] = (*pArr)[i];
delete[] * pArr;
int main()
int lenArr = 0, lenBlock = 0;
int * arr = 0;
int * block = 0;
cout << "input array size n";
cin >> lenArr;
arr = new int[lenArr];
inputArr(arr, lenArr);
cout << "You input array n";
outPutArr(arr, lenArr);
cout << "input block size n";
cin >> lenBlock;
block = new int[lenBlock];
inputArr(block, lenBlock);
cout << "You input block n";
outPutArr(block, lenBlock);
int lenAdd = addBlockToArr(&arr, lenArr, block, lenBlock);
cout << "Add n";
outPutArr(arr, lenAdd);
int lenDel = deleteBlock(&arr, lenAdd, 3, 5);
cout << "Delete from a[3] to a[5] n";
outPutArr(arr, lenDel);
int lenInsert = insertBlock(&arr, lenDel, 2, block, lenBlock);
cout << "Insert after a[2] n";
outPutArr(arr, lenInsert);
return 0;
Сколько здесь прямоугольников
Какое управление было в древнейшем риме? как звали первого и последнего из царей рима?
Уроки французского ответе на вопрос : расскажите о герое по следующему примерному плану: 1.почему мальчик оказался в райцентре ? 2.как он чувствовал себя на новом месте? 3.почему он не убежал в деревню? 4.какие отношения сложились у него с товарищами? 5.почему он ввязался в игру за деньги? 6.как характеризуют его отношения с учительницей ? ответе на эти вопросы пожалуйста ! сочините сочинение пожалуйста
Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили
Переделай союзное предложение в предложение с бессоюзной связью. 1. океан с гулом ходил за стеной чёрными горами, и вьюга крепко свистала в отяжелевших снастях, а пароход весь дрожал. 2. множество темноватых тучек, с неясно обрисованными краями, расползались по бледно-голубому небу, а довольно крепкий ветер мчался сухой непрерывной струёй, не разгоняя зноя 3. поезд ушёл быстро, и его огни скоро исчезли, а через минуту уже не было слышно шума
помогите прошу!перепиши предложения, расставляя недостающие знаки препинания. объясни, что соединяет союз и. если в предложении один союз и, то во втором выпадающем списке отметь «прочерк».пример:«я шёл пешком и,/поражённый прелестью природы/, часто останавливался».союз и соединяет однородные члены.ночь уже ложилась на горы (1) и туман сырой (2) и холодный начал бродить по ущельям.союз и соединяет:1) части сложного предложенияоднородные члены,2) однородные членычасти сложного предложения—.поэт — трубач зовущий войско в битву (1) и прежде всех идущий в битву сам (ю. янонис).союз и соединяет:1) части сложного предложенияоднородные члены,2)
Вокруг прямого проводника с током (смотри рисунок) существует магнитное поле. определи направление линий этого магнитного поля в точках a и b.обрати внимание, что точки a и b находятся с разных сторон от проводника (точка a — снизу, а точка b — сверху). рисунок ниже выбери и отметь правильный ответ среди предложенных.1. в точке a — «от нас», в точке b — «к нам» 2. в точке a — «к нам», в точке b — «от нас» 3. в обеих точках «от нас»4. в обеих точках «к нам»контрольная работа по физике.прошу,не наугад важно