|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.12.2012, 17:51 | #1 |
Регистрация: 07.11.2012
Сообщений: 7
|
Одномерные массивы.
Добрый день. помогите решить.
Дан массив A(N). Если в массиве несколько минимальных элементов, то поменять местами элементы:1-N,2-N-1 и тд. Заранее спасибо |
03.12.2012, 19:54 | #2 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
Ну начнем по порядку: что у Вас уже есть? Ввод массива хотя бы осилили?
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Последний раз редактировалось Sciv; 03.12.2012 в 19:58. |
|
05.12.2012, 08:32 | #3 |
Регистрация: 07.11.2012
Сообщений: 7
|
Получилось что то в этом роде. посмотрите, мб что не правильно
Код:
___________ Код нужно оформлять по правилам: тегом [CODE]..[/СODE] (это кнопочка с решёточкой #) Не забывайте об этом! Модератор. Последний раз редактировалось Serge_Bliznykov; 05.12.2012 в 08:41. |
05.12.2012, 08:53 | #4 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
1-х. форматируйте код. (я позволил себе отформатировать ваш код, пользуясь служебным положением, ибо читать плоскую простыню чрезвычайно неудобно)
2-х. Запомните правило, пригодится. Любая переменная, перед тем, как из неё прочитано значение должна быть проиницилизирована. Обязательно! Поясню. Допустим, Вы дали Васе одно яблоко. Сколько яблок теперь у Васи? Ответ: Сколько угодно, потому что Вы не знаете, сколько у него яблок было изначально! Вы забыли проиницилизровать переменную z Код:
Цитата:
1 <-> N 2 <-> N-1 и т.д. т.е поменять нужно 1-й с последним, 2-й с предпоследним и т.д. в вашей программе, имхо, меняется не так! я бы предложил такой вариант: Код:
|
|
05.12.2012, 09:06 | #5 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Неправильно. Ввод-вывод замечательно, но вот двойной цикл тут не только лишний - он вообще не решает поставленной задачи.
Поскольку операция полностью симметрична относительно середины массива - не надо проходить цикл от 1 до n, достаточно от 1 до n div 2. Второй вложенный цикл убираем совсем, как я сказал выше - с его помощью Вы не меняете элементы, а "протаскиваете" их через весь массив. И еще - переменная z нигде не инициализируется. Позволил себе несколько подредактировать код: Код:
Еще замечу, что в данном случае не обязательно искать минимум отдельным циклом - достаточно его просто при вводе вычислять. Примерно так (используя Ваш код): Код:
Код:
Код:
UPDATE Чтоб не было непонимания - Сергей, мое "неправильно" обращено топикстартеру
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
05.12.2012, 18:25 | #6 |
Регистрация: 07.11.2012
Сообщений: 7
|
Спасибо большое, понял свои ошибки) буду исправляться)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Одномерные массивы, двумерные массивы, строки | Sand093 | C++ Builder | 11 | 20.05.2012 21:48 |
одномерные массивы | repchic | Общие вопросы C/C++ | 2 | 17.12.2011 23:17 |
Одномерные массивы | kazzz | Помощь студентам | 5 | 18.11.2010 13:16 |
Одномерные массивы | maloy-rom | Общие вопросы C/C++ | 11 | 23.12.2009 18:47 |
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент | LyaLya | Помощь студентам | 15 | 20.12.2009 14:12 |