Написать фрагмент программы, удаляющий i
-й элемент из массива целых чисел размера N
, i <= N
. Фрагмент оформить в виде функции, массив передать в функцию через параметры.
Результат работы программы показан ниже.
CppStudio.com
Укажите количество элементов массива: 15 83 86 77 15 93 35 86 92 49 21 62 27 90 59 63 Укажите номер элемента массива, который необходимо удалить: 3 83 86 15 93 35 86 92 49 21 62 27 90 59 63
#include<iostream> using namespace std; #include <cstdlib> bool iDel(int *array, int &lenAr, int nom); int main() { int length_array; cout << "Укажите количество элементов массива: "; cin >> length_array; int *arrayPtr = new int [length_array]; // одномерный динамический массив // заполняем одномерный массив случайными числами for (int counter = 0; counter < length_array; counter++) { arrayPtr[counter] = rand() % 100; // генерируем случайные числа cout << arrayPtr[counter] << " "; // вывод сгенерированного числа } cout << endl; int n; cout << "Укажите номер элемента массива, который необходимо удалить: "; cin >> n; iDel(arrayPtr, length_array, n); for (int counter = 0; counter < length_array; counter++) { cout << arrayPtr[counter] << " "; // вывод сгенерированного числа } cout << endl; delete [] arrayPtr; return 0; } bool iDel(int *array, int &lenAr, int nom) { if ( nom > lenAr || nom < 1) { cout << "Ошибка удаления" << endl; return false; } for(int ix = nom - 1; ix < lenAr - 1; ix++) { array[ix] = array[ix + 1]; } lenAr--; return true; }
Комментарии
olewasl
mpavelFax
Работа на дому официальное трудоустройство.
Vladimir Belikov