![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
andrey1997 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 21.10.2015 Репутация: нет Всего: нет |
Даны целые числа а1...аn, где n - целое положительное число (n<=100). Оставить без изменения последовательность, если она упорядочена по неубыванию или невозрастанию; в противном случае удалить из последовательности все члены, порядковые номера которых кратны четырем, сохранив прежним порядок остальных членов.
|
|||
|
||||
feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 12 Всего: 45 |
И что?
![]() -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
rudolfninja |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 1 Всего: 6 |
У нас преподователь по аналоговым и аналогово-цифровым устрайствам всгде спрашивал этот вопрос. Даже если ответил правильно, он все равно спросит "и что?". И в итоге, пока рикурсывным спуском не дойдешь до самых основ предмета - не сдашь... Это я просто молодость вспомнил ![]() А теперь по делу. Если под последовательностью понимать весь исходный массив, то функция, определяющая упорядочен ли массив по возрастанию (неубыванию) будет выглядить так:
Как написать функцию, проверяющую упорядочен ли массив по убыванию (невозростанию), сможете написать сами по аналогии с этой. Функция, удаляющая элемент массива по номеру выглядит примерно так:
Только в эту функцию надо добавить проверку на то, чтоб номер был корректный и не забыть уменьшать количество элементов массива. Поэтому, советую второй параметр передавать по ссылке, а не по значению и уменьшать количество элементов прямо в функции. Ну а дальше все просто. Справитесь сами. |
||||
|
|||||
konshyn |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Это функция, мало того, что неправильная, так и работать будет очень долго при больших n - сейчас это 100 элементов, а завтра 1млрд. Неправильная, потому что как только мы удалим первый элемент сдвигая массив, все остальные элементы, которые нужно было бы удалить, больше не будут удовлетворять условию и удаляться дальше будут уже не те элементы. Описанные выше проблемы решаются простым использованием временного массива.
Я бы использовал для того, чтобы функция высчитывала сколько элементов осталось, чтобы не высчитывать самому. Либо можно значение (int c) передавать по ссылке. Кому как больше нравится. Это сообщение отредактировал(а) konshyn - 23.10.2015, 14:34 -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
||||
|
|||||
volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 16 Всего: 85 |
|
|||
|
||||
konshyn |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 295 Регистрация: 19.9.2013 Репутация: нет Всего: нет |
Ну да, так в 2 раза лучше:) P.S. if ((i + 1) % 4) -------------------- «Потому что ценность акта действия в этой стране возрастает в несколько раз». |
||||
|
|||||
Starikan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 25.10.2007 Репутация: 1 Всего: -15 |
Модератор: Сообщение скрыто. |
|||
|
||||
Starikan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 25.10.2007 Репутация: 1 Всего: -15 |
Модератор: Сообщение скрыто. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |