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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 144, средняя оценка - 4.82
Genja
0 / 0 / 0
Регистрация: 12.01.2012
Сообщений: 4
#1

Поиск минимального элемента в массиве - C++

12.01.2012, 16:12. Просмотров 23351. Ответов 9
Метки нет (Все метки)

Помогите решить задачку,Вводим в ручную массив и в нем нужно найти минимальные элемент
Заранее спасибо
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2012, 16:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск минимального элемента в массиве (C++):

Поиск в массиве минимального элемента - C++
Ребят помогите. дан массив n*n. нужно найти в каждом столбце минимальный элемент и записать данные в новый массив. подтолкните на путь...

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

Поиск минимального элемента и его индекса в массиве - C++
всем привет! не понимаю как искать в массиве тот элемент, который наименьший и вывести этот элемент и с индексом местоположения точнее...

Поиск максимального и минимального элемента в одномерном динамическом массиве - C++
Помогите пожалуйста, никак не могу понять где тут ошибка и что вообще нужно делать(код на C++) #include "stdafx.h" #include <iostream> ...

Написать шаблон функции, выполняющей поиск минимального элемента в целочисленном массиве - C++
Помогите пожалуйста с программой. Заранее огромное спасибо!!! Написать шаблон функции, выполняющей поиск минимального элемента в...

Поиск минимального элемента - C++
Доброго времени суток. Помогите пожалуйста с программой, вот задание: В одномерном массиве, состоящим из n вещественных элементов,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
12.01.2012, 16:18 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::vector<int> vec((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
    
    if (!vec.empty())
        std::cout << "Min element: " << *std::min_element(vec.begin(), vec.end()) << std::endl;
    
    return 0;
}
4
Serejke_qq
150 / 108 / 9
Регистрация: 06.07.2011
Сообщений: 224
Завершенные тесты: 2
12.01.2012, 16:19 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream.h>
#include <conio.h>
 
int main(int argc, char *argv[])
{
    int size;
    double *mas;
 
    cout << "size = ";
    cin >> size;
 
    mas = new double[size];
 
    for(int i=0; i<size; i++)
        cin >> mas[i];
 
    double min=mas[0];
 
    for(int i=1; i<size; i++)
        if(mas[i] < min) min = mas[i];
 
    for(int i=0; i<size; i++)
        cout << "  " << mas[i];
 
    cout << "\nmin = " << min;
 
    getch();
    delete []mas;
 
    return 0;
}
2
co6ak
Кошковед
407 / 500 / 29
Регистрация: 12.04.2010
Сообщений: 1,392
12.01.2012, 17:01 #4
нафих так много циклов >_<
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
int main ()
{
    int *mas;
    int n;
    std::cout << "Enter number of elements: ";
    std::cin  >> n;
    mas = new int [n];
    std::cout << "\nEnter array values: \n";
 
    int min = 0;
 
    for ( int i = 0; i < n; i ++ )
    {
        std::cin >> mas[i];
        if ( mas[min] > mas[i] ) min = i;
    }
 
    std::cout << "\nMinimal element in array is mas[" << min << "] = " << mas[min];
    std::cin.get();
    delete [] mas;
}
2
TFLinden
7 / 7 / 3
Регистрация: 21.03.2013
Сообщений: 33
21.03.2013, 03:11 #5
C++
1
2
3
4
// Немножко оффтопа
Почему вместо подключения библиотеки имен, постоянно на нее ссылаться? 
Ведь перегрузки имен нет в коде.
// Или мое ламерское святейшество чего-то не понимает...
0
GoldenId
126 / 124 / 32
Регистрация: 11.11.2010
Сообщений: 694
Записей в блоге: 13
Завершенные тесты: 1
21.03.2013, 03:22 #6
Цитата Сообщение от TFLinden Посмотреть сообщение
C++
1
2
3
4
// Немножко оффтопа
Почему вместо подключения библиотеки имен, постоянно на нее ссылаться? 
Ведь перегрузки имен нет в коде.
// Или мое ламерское святейшество чего-то не понимает...
Афайк в сях единственный способ использовать функции, переменные, классы из библиотеки - это иметь их в коде того Вашего файла, который компилируется в данный момент. А единственный способ заиметь их в коде Вашего файла - чтобы препроцессор добавил их туда. Это и происходит, когда ставится директива
C++
1
#include<iostream>
Фактически файл
C++
1
2
3
4
5
6
7
#include <iostream>
using namespace std;
 
int main()
{
    cout << "Hello world!"
}
превращается препроцессором в
C++
1
2
3
4
5
6
7
// содержимое файла iostream
using namespace std;
 
int main()
{
    cout << "Hello world!"
}
Добавлено через 37 секунд
Между прочим, очень важный вопрос, TFLinden.

Добавлено через 2 минуты
silent_1991, приятно посмотреть. Не знал, что есть такая штука istream_iterator
Кликните здесь для просмотра всего текста
да и min_element тоже не знал
1
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
21.03.2013, 07:02 #7
Цитата Сообщение от GoldenId Посмотреть сообщение
Афайк в сях единственный способ использовать функции, переменные, классы из библиотеки - это иметь их в коде того Вашего файла, который компилируется в данный момент. А единственный способ заиметь их в коде Вашего файла - чтобы препроцессор добавил их туда.
Полагаю, вопрос был не про include, а про using namespace.
TFLinden, на эту тему есть тонны холиваров. Лично для меня это дело привычки, да и так правильнее с точки зрения идеологии (если первой осмысленной строкой кода является using namespace xxx;, то смысл в пространствах имён отпадает как таковой).

Цитата Сообщение от GoldenId Посмотреть сообщение
приятно посмотреть. Не знал, что есть такая штука istream_iterator
С ней можно и без вектора обойтись:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::cout << "Min element: "
              << *std::min_element(std::istream_iterator<int>(std::cin),
                                   std::istream_iterator<int>())
              << std::endl;
    
    return 0;
}
Добавлено через 3 минуты

Не по теме:

TFLinden, кроме того, есть её "антоним" - std::ostream_iterator. Он позволяет, например, не писать цикл для вывода коллекции вручную. Можно сделать так (для простоты и наглядности использую последний стандарт, но из него только список инициализации вектора и std::begin/std::end):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
 
int main()
{
    std::vector<int> vec = {1, 2, 3, 4, 5};
    
    std::copy(std::begin(vec), std::end(vec), std::ostream_iterator<int>(std::cout, "  "));
    
    return 0;
}

1
TFLinden
7 / 7 / 3
Регистрация: 21.03.2013
Сообщений: 33
21.03.2013, 13:31 #8
Цитата Сообщение от silent_1991 Посмотреть сообщение
Полагаю, вопрос был не про include, а про using namespace.
TFLinden, на эту тему есть тонны холиваров. Лично для меня это дело привычки, да и так правильнее с точки зрения идеологии (если первой осмысленной строкой кода является using namespace xxx;, то смысл в пространствах имён отпадает как таковой).

Просто как по мне потребность в этом возникает только при перегрузке значений, или когда одни и те же библиотеки имен имеют функции/методы с одинаковым именем.
0
silent_1991
21.03.2013, 13:57
  #9

Не по теме:

Цитата Сообщение от TFLinden Посмотреть сообщение
Просто как по мне потребность в этом возникает только при перегрузке значений, или когда одни и те же библиотеки имен имеют функции/методы с одинаковым именем.
А если ваш проект сначала живёт в собственном мирке, а потом, при расширении, вдруг начинает пользоваться библиотекой, в которой большинство символов лежит в глобальном пространстве имён (пример такой - Qt)? Будете ко всем vector'ам да sort'ам std:: дописывать?
В общем, ещё раз говорю, есть на эту тему множество холиваров, в том числе и на этом форуме. Лучше обратитесь к ним, если интересен данный вопрос. Я начинать ещё один не имею ни малейшего желания.

0
GoldenId
126 / 124 / 32
Регистрация: 11.11.2010
Сообщений: 694
Записей в блоге: 13
Завершенные тесты: 1
21.03.2013, 21:26 #10
silent_1991, я сейчас не на плюсах пишу, но всё равно, афайк, использование агрегатных функций - направление прогресса, хотя бы потому что это удобно (привет выводу десятичного числа на ассемблере).
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.03.2013, 21:26
Привет! Вот еще темы с ответами:

В одномерном массиве, состоящем из вещественных элементов вычислить номер минимального элемента в массиве, сумму элементов массива - C++
В одномерном массиве, состоящем из 10 вещественных элементов вычислить: 1. Номер минимального элемента в массиве 2. Сумму...

Поиск минимального элемента в матрице - C++
Помогите решить задачку,Вводим в ручную матрицу и в нем нужно найти минимальные элемент спасибо

Поиск минимального элемента матрицы - C++
Люди добрые помогите пожалуйта написать программу на С++ Задан двухмерный массив целых чисел A размером N на M. Найти минимальный элемент...

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


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

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

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