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

Найти наименьший элемент заданного массива и его индекс - C++

Восстановить пароль Регистрация
 
blocker147
0 / 0 / 1
Регистрация: 14.12.2015
Сообщений: 120
15.01.2016, 12:10     Найти наименьший элемент заданного массива и его индекс #1
Создать одномерный динамический массив
целых чисел размера n, где n вводит
пользователь. Заполнить его случайными
целыми числами в интервале от -100 до 100.
Найти наименьший элемент массива и его
индекс.

C++
1
2
3
4
5
6
int minindex = 0;
for (int i = 1; i <= n; i++){
    if (arr[i] < min) {
    minindex = i;
        }
}cout << "Min index i=" << minindex << endl;
Не могу понять как найти индекс минимального элемента. Помогите пожалуйстаа
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2016, 12:10     Найти наименьший элемент заданного массива и его индекс
Посмотрите здесь:

Двумерный массив. Найти наименьший элемент матрицы. Напечатать его индексы C++
Найти самый большой элемент матрицы по модулю и его индекс C++
Найти первый отрицательный элемент и его индекс в массиве C++
C++ Найти индекс максимального элемента заданного массива
C++ Найти наименьший элемент 3-го столбца, заменить его на среднее арифметическое
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dimension
Dimension
547 / 428 / 132
Регистрация: 08.04.2014
Сообщений: 1,693
Завершенные тесты: 1
15.01.2016, 12:12     Найти наименьший элемент заданного массива и его индекс #2
C++
1
2
3
4
5
6
int minindex = 0;
for (int i = 1; i <= n; i++){
    if (arr[i] < arr[minindex]) {
    minindex = i;
        }
}cout << "Min index i=" << minindex << endl;
blocker147
0 / 0 / 1
Регистрация: 14.12.2015
Сообщений: 120
15.01.2016, 12:18  [ТС]     Найти наименьший элемент заданного массива и его индекс #3
C++
1
2
3
4
5
6
int minindex = 0;
for (int i = 1; i <= n; i++){
    if (arr[i] < arr[minindex]) {
    minindex = i;
        }
}cout << "Min index i=" << minindex << endl;
Работает, но неправильно. Не выдаёт индекс минимального, а выдаёт размер массива. Вот вся программа:

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
#include <iostream>
#include <time.h>
using namespace std;
int main()
{
    int n; cin >> n; int min = INT_MAX; int minindex = 0;
    int *arr = new int[n];
    srand(time(NULL));
    for (int i = 0; i < n; i++){
        arr[i] = -100 +rand() % 201;
        cout << arr[i] << " ";
    }
    for (int i = 0; i < n; i++){
        if (arr[i] < min){
            min = arr[i];
        }
    }cout << "Min arr[i]=" << min << endl;
    for (int i = 1; i <= n; i++){
        if (arr[i] < arr[minindex]) {
            minindex = i;
        }
    }cout << "Min index i=" << minindex << endl;
    system("pause");
    return 0;
}
Dimension
Dimension
547 / 428 / 132
Регистрация: 08.04.2014
Сообщений: 1,693
Завершенные тесты: 1
15.01.2016, 12:21     Найти наименьший элемент заданного массива и его индекс #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
<n сделайте в 3 цикле
GbaLog-
Не Эксперт C++
1530 / 634 / 177
Регистрация: 24.08.2014
Сообщений: 2,569
Записей в блоге: 1
Завершенные тесты: 2
15.01.2016, 12:24     Найти наименьший элемент заданного массива и его индекс #5
blocker147,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <random>
#include <ctime>
 
using namespace std;
 
int main() {
    int n, min = 0;
    mt19937 gen(time(nullptr));
    uniform_int_distribution<int> dist(-100,100);
    std::cin >> n;
    int* arr = new int[n];
    
    for( int i = 0; i < n; i++ ) {
        arr[i] = dist(gen);
        if( arr[min] > arr[i] ) min = i;
    }
    cout << "min elem: " << arr[min] <<
            "min index: " << min << endl;
    cin.get();
    return 0;
}
Yandex
Объявления
15.01.2016, 12:24     Найти наименьший элемент заданного массива и его индекс
Ответ Создать тему
Опции темы

Текущее время: 09:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru