С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
Мария55593
0 / 0 / 0
Регистрация: 18.01.2012
Сообщений: 73
#1

Дана последовательность из n действительных чисел. найти номер первого максимального элемента. - C++

23.02.2012, 21:43. Просмотров 1955. Ответов 7
Метки нет (Все метки)

помогите пожалуйста составить программу!!!
Дана последовательность из n действительных чисел.
найти номер первого максимального элемента.
замечание:задачу решить, используя одномерный массив.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2012, 21:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дана последовательность из n действительных чисел. найти номер первого максимального элемента. (C++):

Дана последовательность из n действительных чисел. Найти номер первого минимального элемента - C++
Дана последовательность из n действительных чисел. Найти номер первого минимального элемента.

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

Найти номер первого максимального элемента среди отрицательных элементов, расположенных до первого элемента, большего Т. - C++
Задан целочисленный одномерный массив a из n элементов. Найти номер первого максимального элемента среди отрицательных элементов,...

Дана последовательность из n целых чисел. Найти номер минимального элемента в этой последовательности. - C++
Решить указанные в задачи, используя основные операторы языка С++. При решении задачи, использовать все типы циклов (for, while, do while) ...

Найти номер первого максимального элемента - C++
Найти номер первого максимального элемента.

Найти номер последнего максимального элемента среди элементов, лежащих в диапазоне [c,d] и расположенных до первого четного элемента. - C++
помогите с задачкой Найти номер последнего максимального элемента среди элементов, лежащих в диапазоне и расположенных до...

7
Devochka
31 / 19 / 1
Регистрация: 07.10.2011
Сообщений: 98
23.02.2012, 21:52 #2
Это как - первый максимальный элемент? Он же по идее должен быть один. Может просто номер максимального элемента?
0
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
23.02.2012, 21:57 #3
Цитата Сообщение от Devochka Посмотреть сообщение
Это как - первый максимальный элемент?
Ну, например, дан массив!

0 1 5 4 5 3 5

В нем максимальный элемент 5, их таких пятерок аж 3, нужно узнать номер первой 5.

если считать что нумерация начинаеться с нуля, то тогда:

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
32
33
34
35
36
37
#include "iostream"
#include "time.h"
 
using namespace std;
 
 
int main()
{
    setlocale(0, "");
    int mas[100] = {0};
    int n, max, maxi;
 
    srand(time(0));
    cout << "Введите размер массива - ";
    cin >> n;
 
    cout << "\nОдномерный массив:\n";
    for(int i = 0; i < n; i++)
    {
        cout << (mas[i] = rand() % 10) << " ";
    }
 
    max = mas[0];
    for(int i = 0; i < n; i++)
    {
        if(mas[i] > max)
        {
            max = mas[i];
            maxi = i;
        }
    }
    
    cout << "\nНомер первого максимального элемента - " << maxi << endl;
 
    system("pause >> null");
    return 0;
}
если с единицы то

замени

C++
1
cout << "\nНомер первого максимального элемента - " << maxi << endl;
на

C++
1
cout << "\nНомер первого максимального элемента - " << maxi + 1<< endl;
0
Devochka
31 / 19 / 1
Регистрация: 07.10.2011
Сообщений: 98
23.02.2012, 22:00 #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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# include <iostream>
#include <ctime>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    srand (time(0));
 
    const int n = 5;
    int Massiv [n];
    
    for (int i = 0; i < n; i++) // заполнение массива
        Massiv [i] = rand() % 201;
    
    cout << "Наш массив :\n" << endl;
    for (int i = 0; i < n; i++) // вывод массива на экран
        cout << Massiv [i] << '\t';
    cout << endl;
    
    int max = 0;
    for (int i = 0; i < n; i++) // находим максимум
    {
        for (int j = 0; j < n; j++)
        {
            max = (max > Massiv [i]) ? max : Massiv [i];
        }
    }
 
    for (int i = 0; i < n; i++) // находим место максимума
    {
        if (max == Massiv [i])
            cout << "Индекс максимума - " << i; 
    }
    cout << endl;
    
    return 0;
}
А если нужна позиция на экране, то в строчке, где мы выводим индекс пишешь : i +1.
1
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
23.02.2012, 22:02 #5
Цитата Сообщение от Devochka Посмотреть сообщение
если нужен индекс
Ну я думаю что ТС это и имел ввиду!!)
0
Devochka
31 / 19 / 1
Регистрация: 07.10.2011
Сообщений: 98
23.02.2012, 22:06 #6
Infinity3000, спасибо за объяснение. Только что проверила свою программу на более маленьком диапазоне. У меня выведутся все максимумы. Если нетрудно, подскажите, что можно исправить в моей программе, чтобы она работала корректно. Самой интересно.
0
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
23.02.2012, 22:26 #7
Цитата Сообщение от Devochka Посмотреть сообщение
Если нетрудно, подскажите, что можно исправить в моей программе, чтобы она работала корректно. Самой интересно.
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
32
33
34
35
36
37
38
# include <iostream>
#include <ctime>
using namespace std;
 
int main()
{
        setlocale(LC_ALL, "Russian");
        srand (time(0));
 
        const int n = 5;
        int Massiv [n];
        int maxi;
        int max;
        
        for (int i = 0; i < n; i++) // заполнение массива
                Massiv [i] = rand() % 201;
        
        cout << "Наш массив :\n" << endl;
        for (int i = 0; i < n; i++) // вывод массива на экран
                cout << Massiv [i] << '\t';
        cout << endl;
        
        max = Massiv[0];
        for (int i = 0; i < n; i++) // находим максимум
        {
            if(Massiv[i] > max)
            {
                max = Massiv[i];
                maxi = i;   
            }
            
 
        }
 
        cout << "\nНомер первого максимального элемента - " << maxi << endl;     
        system("pause >> null");
        return 0;
}
2
Devochka
31 / 19 / 1
Регистрация: 07.10.2011
Сообщений: 98
23.02.2012, 23:09 #8
Infinity3000, спасибо. Поняла.)
0
23.02.2012, 23:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2012, 23:09
Привет! Вот еще темы с ответами:

В массиве найти номер первого максимального элемента - C++
Дан целочисленный массив. Найти индекс первого максимального элемента

Найти номер первого максимального элемента массива - C++
найти номер первого максимального элемента реализовать с функциями

Дана последовательность из n действительных чисел: найти максимум из модулей элементов - C++
Найти максимум из модулей элементов. В C++

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


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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