![]() |
Одномерные динамические массивы
Помогите пожалуйста разобраться, задали задание:
В целочисленном динамическом массиве Х(N) удалить все нечетные числа. Проверить, как поменялось положение максимального элемента массива. Найти среднее арифметическое элементов массива до и после удаления. В программе написать функции: удаления элемента, поиска номера максимального элемента, вычисления среднего арифметического элементов массива. Вроде бы все написал, но не могу написать саму функцию удаления элемента данного массива... Пишет, что нельзя удалить объект не являющийся указателем... Помогите пожалуйста. Можно ли удалить конкретные элементы динамического массива... Цитата:
|
Удалить один элемент из массива нельзя, надо создавать еще один массив. Просто когда ищешь нечетные, помечай их нулями(ну или -1), и счетчик заведи который посчитает их кол-во. Потом от первоначального размера массива отними счетчик, создай полученный массив, и забей его не нулевыми элементами, а старый удали.
|
Цитата:
Что можно сделать 1. Выделить такой же объём информации под другой массив. 2. Создать отдельную переменную - количество элементов во втором массиве. 3. При совпадении условия копировать элемент из первого массива в конец второго массива (в позицию, определяемую переменной из п.2) По завершении проверки обработать все актуальные элементы второго массива Код:
void raschet(int *_mass,int _size) |
Спасибо всем.. я все таки решил...
Код:
#include<iostream> |
Время: 07:34. |
Время: 07:34.
© OSzone.net 2001-