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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2009, 22:55   #1
JulLy
Профессионал
Пользователь
 
Аватар для JulLy
 
Регистрация: 27.04.2009
Сообщений: 37
Печаль Ошибка в проверке!

Задание:
В однородном массиве,состоящем из 12 целых элементов,значения элементов массива вводятся пользователем с клав-ры.
Найти минимальный элемент и его номер среди положительных чисел.

Не могу сделать проверку:
Код:
if(mas[i]<0    & mas[i]<10   & mas[i]>2)
- проверка не правильна.Думаю что надо инициализировать переменные max и min.А насчёт найти номер вообще не знаю,как делать.Заранее спасыБО!
JulLy вне форума Ответить с цитированием
Старый 01.12.2009, 23:04   #2
m0nax
Форумчанин
 
Аватар для m0nax
 
Регистрация: 25.09.2009
Сообщений: 525
По умолчанию

if(mas[i]>0 && mas[i] < min)
{
Min = mas[i];
сохранить i где-то;
}
m0nax вне форума Ответить с цитированием
Старый 01.12.2009, 23:10   #3
Ozerich
Студент 1 курса
Форумчанин Подтвердите свой е-майл
 
Аватар для Ozerich
 
Регистрация: 27.06.2008
Сообщений: 959
По умолчанию

Цитата:
Сообщение от JulLy Посмотреть сообщение
Задание:
В однородном массиве,состоящем из 12 целых элементов,значения элементов массива вводятся пользователем с клав-ры.
Найти минимальный элемент и его номер среди положительных чисел.

Не могу сделать проверку:
Код:
if(mas[i]<0    & mas[i]<10   & mas[i]>2)
- проверка не правильна.Думаю что надо инициализировать переменные max и min.А насчёт найти номер вообще не знаю,как делать.Заранее спасыБО!
Алгоритм таков:
Присваиваешь переменной mi большое число
Идёшь циклом по массиву и проверяешь меньше ли текущий элемент чем min.Если да то присваиваешь min текущий элемент а номер этого элемента будет текущая итерация цикла.Смотри:

Код:
int mi=99999999,pos;
for(int i=0;i<n;i++)
if(ms[i]<mi)
{
mi=ms[i];
pos=i+1;
}
n-кол-во элементов в массиве
mi-минимальный элемент
pos-позиция минимального элемента
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
Ozerich вне форума Ответить с цитированием
Старый 02.12.2009, 00:54   #4
JulLy
Профессионал
Пользователь
 
Аватар для JulLy
 
Регистрация: 27.04.2009
Сообщений: 37
По умолчанию

Спасибо за ответы...а если сделать так:
Код:
int pos;
ms[0]=min;
for(int i=0;i<12;i++)
if(ms[i]<mi)
{
mi=ms[i];
pos=i+1;
}
Смысл:Присваиваем первому элементу массива минимальное значение,а потом сравниваем его с другими элементами массивами...ПС:Если можно напишите или скиньте ссылку на директивы для С++ для доса...А то только начала учить директивы,половину не знаю...Спс!

Последний раз редактировалось JulLy; 02.12.2009 в 00:58.
JulLy вне форума Ответить с цитированием
Старый 02.12.2009, 01:08   #5
Ozerich
Студент 1 курса
Форумчанин Подтвердите свой е-майл
 
Аватар для Ozerich
 
Регистрация: 27.06.2008
Сообщений: 959
По умолчанию

Цитата:
Сообщение от JulLy Посмотреть сообщение
Спасибо за ответы...а если сделать так:
Так тоже можно
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
Ozerich вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Nero - ошибка драйвера DMA. ошибка CRC NecRoMat Софт 5 09.05.2012 01:29
Прошу помощи в проверке моего перевода небольшого фрагмента кода от Си к делфи! SkAndrew Общие вопросы Delphi 11 16.08.2009 16:37
...Ошибка 101 (net::ERR_CONNECTION_RESET): Неизвестная ошибка... infrared Помощь студентам 0 16.04.2009 17:44
готовый код!нужна помошь в проверке(корректировке) -ushёl- Помощь студентам 23 13.03.2009 17:02
программное переключение словаря при проверке орфографии методами MS Word tojhto Общие вопросы Delphi 2 06.09.2008 01:54