Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.09.2009, 21:28   #1
StudentPolitech
Форумчанин
 
Аватар для StudentPolitech
 
Регистрация: 21.11.2008
Сообщений: 400
Радость Массивы

Здрасти никто не подскажет по лабе:
Ввести произвольные числа в два одномерных массива одинаковой размерности N (N задано). Создать третий массив, переставив элементы первого массива так, чтобы его максимальный элемент находился на месте расположения максимального элемента из второго массива, а каждый следующий очередной по убыванию элемент на месте оче-редного по убыванию элемента второго массива. Напечатать модифицированный массив.
Подскажите пожалуйста: когда я нахожу максимальный элемент массива и записываю его в третий массив, то мне надо заново "пройтись" по массиве в поиске нового максимального элемента (т.е исключив "старый" максимум). Чё то думал думал никак не могу придумать как это провернуть
Винда, KIS 2010, книжка по С/С++, остальное неважно........
StudentPolitech вне форума Ответить с цитированием
Старый 22.09.2009, 21:59   #2
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Мой совет: отсортируйте оба исходных массива по убыванию, запоминая при этом, из какой ячейки какое число прибежало на текущую позицию (завести 2 дополнительных массива). Вроде идея должна быть понятна

А на тот вопрос, что вы задали ответ таков: найдите перед началом работы вашего алгоритма минимальный в массиве и все максимальные элементы затем изменяйте на min-1.
mMAg вне форума Ответить с цитированием
Старый 22.09.2009, 22:02   #3
StudentPolitech
Форумчанин
 
Аватар для StudentPolitech
 
Регистрация: 21.11.2008
Сообщений: 400
По умолчанию

Цитата:
элементы затем изменяйте на min-1.
Хм к сожаленью элементы не на единицу отличаются, а абсолютно рандомные. А за первую мысль спасибо можно кое что сообразить
Винда, KIS 2010, книжка по С/С++, остальное неважно........
StudentPolitech вне форума Ответить с цитированием
Старый 23.09.2009, 11:12   #4
mMAg
Форумчанин
 
Аватар для mMAg
 
Регистрация: 11.08.2009
Сообщений: 433
По умолчанию

Цитата:
Хм к сожаленью элементы не на единицу отличаются, а абсолютно рандомные. А за первую мысль спасибо можно кое что сообразить
А какая разница насколько они отличаются. Фишка в том, что вы каждый максимальный на текущей итерации элемент заменяете на элемент, который меньше минимального во всем массиве, следовательно он вам больше не попадется, если, конечно, переполнения не произойдет.

Мне тоже первый вариант больше нравится
mMAg вне форума Ответить с цитированием
Старый 24.09.2009, 15:21   #5
StudentPolitech
Форумчанин
 
Аватар для StudentPolitech
 
Регистрация: 21.11.2008
Сообщений: 400
По умолчанию

Цитата:
А какая разница насколько они отличаются. Фишка в том, что вы каждый максимальный на текущей итерации элемент заменяете на элемент, который меньше минимального во всем массиве, следовательно он вам больше не попадется, если, конечно, переполнения не произойдет.
Теперь понял мысль просто сначала не врубился. Но первый метод действительно лучше уже написал его вроде работает
Винда, KIS 2010, книжка по С/С++, остальное неважно........
StudentPolitech вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
Массивы Ronk Паскаль, Turbo Pascal, PascalABC.NET 1 04.06.2009 19:58
Массивы Olalya da Silva Паскаль, Turbo Pascal, PascalABC.NET 2 14.01.2009 20:26
Массивы Баламут Win Api 9 12.01.2008 18:57