Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
bupal
25 / 25 / 3
Регистрация: 30.03.2010
Сообщений: 357
Записей в блоге: 1
#1

Минимальный элемент массива - C++

24.11.2011, 22:36. Просмотров 1512. Ответов 32
Метки нет (Все метки)

Доброго времени суток!
Как найти номер элемента массива, содержащий самое маленькое значение...
тобишь у меня есть массив с определённым количеством элементов..и в нём есть цифры..
мне нужно узнать в каком элементе массива содержится самая маленькая цифра..
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.11.2011, 22:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Минимальный элемент массива (C++):

Определить, что больше: максимальный элемент массива А[10] или минимальный элемент массива В[7] - C++
Определить, что больше: максимальный элемент массива А или минимальный элемент массива В. Поставить максимальный элемент из них на место...

Минимальный элемент одномерного массива A заменить на третий отрицательный элемент - C++
Минимальный элемент одномерного массива A заменить на третий отрицательный элемент. Третий отрицательный искать от минимального элемента.

Поменять местами минимальный элемент с первым элементом массива, а максимальный элемент с последним - C++
Здравствуйте. Помогите пожалуйста написать программу: для поиска минимального и максимального элементов массива из 15 действительных чисел....

Поменять местами минимальный элемент и первый отрицательный элемент массива целых чисел - C++
Поменять местами минимальный элемент и первый отрицательный эле-мент массива целых чисел.Необходимо использовать указатели и динамическйи...

В одномерном массиве, состоящем из n элементов массива, вычислить минимальный элемент массива - C++
помогите

Массивы. Вычислить минимальный элемент массива, сумму элементов массива, преобразовать массив - C++
При написании программ использовать динамические массивы. Размерность массивов задаётся именованной константой. Задача 2. В...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Bers
Заблокирован
24.11.2011, 22:38 #2
bupal, есть у тебя три палочки разной длины. Первая палочка имеет номер 1, вторая палочка имеет номер два, третия палочка имеет номер 2.

Как узнать номер самой короткой палочки?
0
neske
1495 / 862 / 82
Регистрация: 26.03.2010
Сообщений: 2,951
24.11.2011, 22:38 #3
C++
1
2
3
4
5
6
7
8
9
#include <algorithm>
int idx_min = std::min_element (arr, arr + size) - arr;
// or
int min = arr[0], idx_min = 0;
for (int i = 0; i < size; ++i)
    if (min < arr[i]) {
        min = arr[i];
        idx_min = i;
    }
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
24.11.2011, 22:38 #4
bupal,
C++
1
std::min_element(vec.begin(), vec.end()) - vec.begin();
0
Thinker
Эксперт C++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
24.11.2011, 22:41 #5
bupal, как то вы непонятно с числами и цифрами изъясняетесь. Так можно понять еще вот как: найти индекс такого элемента массива, который содержит минимальную цифру. А каждый элемент массива - число, состоящее из цифр.
А можно понять и просто как индекс минимального элемента. Почувствуйте разницу.
0
bupal
25 / 25 / 3
Регистрация: 30.03.2010
Сообщений: 357
Записей в блоге: 1
24.11.2011, 22:45  [ТС] #6
Цитата Сообщение от ForEveR Посмотреть сообщение
bupal,
C++
1
std::min_element(vec.begin(), vec.end()) - vec.begin();
vec имеется в виду название массива?...
тоесть если у меня есть массив int a[];
то запись будет выглядеть как:
C++
1
min_element(a.begin(), a.end()) - a.begin();
так?...
0
Сыроежка
Заблокирован
24.11.2011, 22:51 #7
bupal,

Я думаю, вам еще рано иметь дело со стандартными алгоритмами.
Поэтому я вам покажу упрощенную версию поиска минимального элемента в целочисленном массиве

C++
1
2
3
4
5
6
7
8
9
10
11
 unsigned int min_element( int a[], unsigned int n )
{
   unsigned int min = 0;
 
   for ( unsigned int i = 1; i < n; i++ )
   {
      if ( a[i] < a[min] ) min = i;
   }
 
   return ( min );
}
Если есть массив, например, int a[N], где N - неокторая константа, то воспользоваться функцией можно следующим образом

C++
1
2
3
4
unsigned int min = min_element( a, N );
 
if ( min != N ) std::cout << "minimum = " << a[min] << std::endl;
else std::cout << "minimum has not been found\n";
1
Thinker
Эксперт C++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
24.11.2011, 22:53 #8
Цитата Сообщение от bupal Посмотреть сообщение
мне нужно узнать в каком элементе массива содержится самая маленькая цифра..

Не по теме:

ладно, раз никого не смущает такая формулировка, то ладно...

0
bupal
25 / 25 / 3
Регистрация: 30.03.2010
Сообщений: 357
Записей в блоге: 1
24.11.2011, 22:56  [ТС] #9
Цитата Сообщение от Thinker Посмотреть сообщение

Не по теме:

ладно, раз никого не смущает такая формулировка, то ладно...

я лично не очень понимаю, что не так в этой формулировке?...
0
Thinker
Эксперт C++
4226 / 2200 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
24.11.2011, 22:57 #10
Цитата Сообщение от bupal Посмотреть сообщение
я лично не очень понимаю, что не так в этой формулировке?...

Не по теме:

пост #5

0
Bers
Заблокирован
24.11.2011, 22:58 #11
bupal,


11 22 33 40 массив чисел

Самая маленькая цыфра содержится в элементе под номером 3
Самое маленькое число содержится в элементе под номером 0.

Так доходит?

Разницу между "цыферкой" и "числом" осознаете?
0
bupal
25 / 25 / 3
Регистрация: 30.03.2010
Сообщений: 357
Записей в блоге: 1
25.11.2011, 01:32  [ТС] #12
Цитата Сообщение от Сыроежка Посмотреть сообщение
bupal,

Я думаю, вам еще рано иметь дело со стандартными алгоритмами.
Поэтому я вам покажу упрощенную версию поиска минимального элемента в целочисленном массиве

C++
1
2
3
4
5
6
7
8
9
10
11
 unsigned int min_element( int a[], unsigned int n )
{
   unsigned int min = 0;
 
   for ( unsigned int i = 1; i < n; i++ )
   {
      if ( a[i] < a[min] ) min = i;
   }
 
   return ( min );
}
Если есть массив, например, int a[N], где N - неокторая константа, то воспользоваться функцией можно следующим образом

C++
1
2
3
4
unsigned int min = min_element( a, N );
 
if ( min != N ) std::cout << "minimum = " << a[min] << std::endl;
else std::cout << "minimum has not been found\n";
Скажите, а есть способ переделать этот алгоритм так, чтобы он мог давать следующее значение, если минимум только что был использован..
к примеру я сохраняю номер минимума, который только что получил...
и потом проверяю, если минимум, который даёт функция равен сохранённому минимуму, то вернуть миним, который идёт после этого...
0
Сыроежка
Заблокирован
25.11.2011, 01:38 #13
bupal,
Извините. но я не увидел, что мой ответ для вас интересен.
0
bupal
25 / 25 / 3
Регистрация: 30.03.2010
Сообщений: 357
Записей в блоге: 1
25.11.2011, 01:40  [ТС] #14
Цитата Сообщение от Сыроежка Посмотреть сообщение
bupal,
Извините. но я не увидел, что мой ответ для вас интересен.
Извеняюсь..исправился..))
большое спасибо..
0
QVO
638 / 449 / 32
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
Завершенные тесты: 2
25.11.2011, 01:43 #15
bupal,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <limits.h>
 
// С начало переменная мин содержит максимум.
int min = INT_MAX;
// Задали размер массива
int size = 10;
// Создали динамически массив
int array = new int[size ];
 
// Запускаем цикл
for(int i = 0; i <  size; i++)
{
// Если данные в ячейки меньше минимума, то присваеваем
// минимуму значение ячейки
if(array[i] < min) min = array[i] ;
}
еще как вариант:
C++
1
2
3
4
5
// Запускаем цикл
for(int i = 0; i <  size; i++)
{
min = std:min(array[i], min);
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2011, 01:43
Привет! Вот еще темы с ответами:

Записать элементы массива X, удовлетворяющие условию в массив Y; найти минимальный элемент массива X - C++
4. Записать элементы массива X, удовлетворяющие условию Х, подряд в массив Y =. Определить минимальный элемент массива X.

Определить номер столбца массива, в котором расположен минимальный элемент четвертой строки массива - C++
Доброго времени суток, помогите пожалуйста решить задачи по C++ 3)Дан двумерный массив. Определить: a) номер столбца, в котором...

Найти минимальный элемент массива (через указатели, запрещено обращаться к элементам массива по индексам) - C++
Написать программу, создающую массив из 10 случайных целых чисел из отрезка . Вывести на экран весь массив и на ...

Поменять местами минимальный и максимальный элемент массива V[25] и подсчитать количество парных элементов массива - C++
Поменять местами минимальный и максимальный элемент массива V и подсчитать количество парных элементов массива


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.11.2011, 01:43
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru