|
0 / 0 / 0
Регистрация: 17.11.2022
Сообщений: 76
|
||||||
Найти наибольший отрицательный элемент одномерного массива и удалить его, сдвинув оставшиеся элементы к началу массива02.01.2023, 12:16. Показов 921. Ответов 10
Метки массив, массив c++, массив с, матрица, матрица c, матрица c++, матрицы, матрицы с, матрицы с++, наибольший элемент, удалить элемент из списка, удалить элемент из массива (Все метки)
Условие: Найти наибольший отрицательный элемент одномерного массива и удалить его, сдвинув оставшиеся элементы к началу массива. Если в массиве несколько элементов имеют наибольшее отрицатель- ное значение, удалить их все. Массив, все элементы которого отрицательны и равны между собой, признается некорректным.
Выводить сообщение об ошибке при некорректных и равных значениях получается, а вот удалить максимальный элемент — нет. Не понимаю, как доработать код, чтобы задача была корректной.
0
|
||||||
| 02.01.2023, 12:16 | |
|
Ответы с готовыми решениями:
10
Найти наибольший отрицательный элемент одномерного массива и удалить его |
|
Модератор
|
|||||||||||
| 02.01.2023, 14:50 | |||||||||||
|
Основная идея:
Легко заметить, что можно немного упростить:
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 17.11.2022
Сообщений: 76
|
|||||||||||
| 02.01.2023, 15:10 [ТС] | |||||||||||
|
Все равно не очень понимаю механизм работы программы. Получается, что мы создаем новый массив, из которого удаляем максимальный отрицательный. Реализовать печать нового массива нужно в последнем цикле?
Общее решение сейчас выглядит вот так:
и for (int i=j+1; i<N; ++i). Чем в данном случае является переменная j и почему она принимает значение i+1?
0
|
|||||||||||
|
Модератор
|
|||||||||||||||||
| 02.01.2023, 16:50 | |||||||||||||||||
|
Я б отделил мух от котлет...
Добавлено через 11 минут 9-11: инициализация массива, 13-14, 24-25: вывод исходного и измененного массива, 16-19: поиск первого из отрицательных максимальных и его индекса, 20-22: оставим в массиве только те элементы, что не равны max, заодно в n получим новую длину. Добавлено через 2 минуты Если цикл в 16-19 не нравится, можно записать его обычно:
Ах да, по условиям нужно выполнить проверку... Правда условие некорректности немного странное, тем не менее:
0
|
|||||||||||||||||
|
37 / 21 / 17
Регистрация: 13.04.2016
Сообщений: 106
|
||||||
| 04.01.2023, 18:46 | ||||||
|
Boiycha, если можно использовать дополнительный массив:
0
|
||||||
|
Модератор
|
|||||||||||
| 04.01.2023, 19:15 | |||||||||||
|
crazykreis,
слишком много ошибок... Добавлено через 2 минуты Посмотрите, что будет, если
Ну и нерациональностей тоже хватает... Например, вместо 20-27 достаточно:
0
|
|||||||||||
|
37 / 21 / 17
Регистрация: 13.04.2016
Сообщений: 106
|
||
| 04.01.2023, 19:43 | ||
|
bormant,
Проверку все ли равные отрицательные числа переделать 2 мин, я просто поздно вспомнил что она тоже должна быть в коде, надо было уже выходить. Это вообще не критичные участки.
0
|
||
|
Модератор
|
||
| 04.01.2023, 20:33 | ||
|
Думаете новый arr, выделенный в строке 85, сможет вернуться из функции? Согласитесь, это достаточно критично. А кажется, что работает, только потому, что malloc() в строке 85 по счастливой случайности выдает тот же адрес, что и malloc() в строке 15 ![]() Добавлено через 6 минут Но если строки 83, 85 убрать, то код хоть формально корректным в этой части станет, хоть и по-прежнему неэффективным...
0
|
||
|
37 / 21 / 17
Регистрация: 13.04.2016
Сообщений: 106
|
|
| 04.01.2023, 20:41 | |
|
да кстати вы правы. Я тоже думал, что arr не вернется из функции, пробовал удалять его) Там в итоге если SIZE вернуть прежний новый массив на старый наложиться вроде.
0
|
|
|
37 / 21 / 17
Регистрация: 13.04.2016
Сообщений: 106
|
||||||
| 05.01.2023, 12:11 | ||||||
|
Boiycha, вот этот код можешь смело использовать:
0
|
||||||
|
Модератор
|
||||||
| 05.01.2023, 13:31 | ||||||
|
crazykreis,
так не получше вместо 54-64:
0
|
||||||
| 05.01.2023, 13:31 | |
|
Помогаю со студенческими работами здесь
11
Найти наибольший отрицательный элемент массива А(23) и удалить его Найти наибольший отрицательный элемент одномерного массива
Массивы. Удалить из массива все элементы, превосходящие х, а оставшиеся сдвинуть к началу FASM - Среди элементов одномерного массива найти наибольший отрицательный и наименьший положительный элементы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|