|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
05.04.2011, 02:02 | #1 |
Пользователь
Регистрация: 30.11.2010
Сообщений: 14
|
массивы(вывод минимальный чисел)
Задать массив их 30 целых двузначных чисел с помощью датчика случайных чисел.
Найти три минимальных элемента (минимальный элемент и два ближайших к нему числа). Записать индексы, найденных элементов в массив и вывести его на экран. Код:
Последний раз редактировалось ACE Valery; 06.04.2011 в 01:26. |
07.04.2011, 10:06 | #2 |
Участник клуба
Регистрация: 29.12.2009
Сообщений: 1,166
|
самый простой способ - сортировка по возрастанию, и выбрать 3 первых элемента (учитывайте, что могут числа повторяться)
но данный способ Вам не подходит, т.к. в задании указано, что необходимы индексы минимальных чисел второй способ: находим минимальный элемент, запоминаем индекс, далее, второй проход исключает из поиска минимальных чисел тот индекс в массиве, к-рый мы нашли, потом третий проход, только уже из поиска исключить 2 индекса
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть] |
07.04.2011, 12:47 | #3 |
Пользователь
Регистрация: 30.11.2010
Сообщений: 14
|
а не подскажете каким образом можно исключить это число?
|
07.04.2011, 13:59 | #4 |
Участник клуба
Регистрация: 29.12.2009
Сообщений: 1,166
|
ну я ж написал как
допустим, нашел индекс первого минимального числа, индекс равен 5 второй проход исключает этот индекс из поиска Код:
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть] |
09.04.2011, 15:52 | #5 |
Пользователь
Регистрация: 30.11.2010
Сообщений: 14
|
RUSt88
есть ли смысл прописать прогу далее так чтобы условие отсчитывалось как частный случай то есть i=2 (к примеру) а не i!=2 ???? |
10.04.2011, 08:18 | #6 |
Пользователь
Регистрация: 09.04.2011
Сообщений: 30
|
Судя по строке:
Код:
Что касается исходной задачи: То можно жестко запоминать конкретные 3 элемента и их индексы в процессе генерации случайных чисел - что ускорит конечный поиск для текущей конкретной задачи. const int N = 30; dim[N] = (rand %89 ) + 10; //исходный массив int Min1, Min2, min3; //3 минимальные элемента unsigned int ind1, ind2, ind3; //индексы 3х минимальных //-------Далее запоминаем первые три числа и их индексы соответственно //-------Создаем дальнейший нехитрый алгоритм обхода с 4(четвертого) элемента исходного массива, при этом сравнивая его с предыдущими тремя запомненными соответственно. P.S. Этот алгоритм позволит точно справится с поставленной перед Вами задачей, но он далеко не универсален. |
10.04.2011, 19:53 | #7 |
Пользователь
Регистрация: 30.11.2010
Сообщений: 14
|
алгоритм записи я и сам преккрасно знаю даже несколько способов
а вот прописать это не выходит вобще ни разу и изза этого в тупик встаю |
10.04.2011, 20:07 | #8 |
Пользователь
Регистрация: 30.11.2010
Сообщений: 14
|
спасибо большое сделал эту прогу наконецто
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод чисел | Matt_Tuck | Фриланс | 11 | 15.03.2010 23:03 |
Вывод чисел фибоначчи в процедуре | Sparky | Помощь студентам | 0 | 20.12.2009 10:41 |
Вывод простых чисел. | MAKEDON | Помощь студентам | 1 | 10.03.2009 16:55 |
Форматированный вывод чисел | frankfish | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 04.03.2009 17:59 |
Вывод целых и десятичных чисел | Maycal | Общие вопросы C/C++ | 2 | 24.10.2007 12:34 |