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

Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. - C++

Восстановить пароль Регистрация
 
egor_zar
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 3
04.10.2013, 09:48     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. #1
Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. Написать программу по шагам.

Добавлено через 19 минут
Пожалуйста очень важно
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2013, 09:48     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов.
Посмотрите здесь:

C++ Дан массив из Н элементов. Найти сумму элементов с четными номерами и отдельно с нечетными
Дан массив целых чисел. Найти номера элементов оканчивающихся цифрой 0 (известно, что такие цифры в массиве есть). C++
C++ Дан массив из n элементов. Найти в нем количество элементов, больших 10 и вывести их на экран.
C++ Дан массив целых чисел. Найти номера элементов, оканчивающихся цифрой 0 (известно, что такие элементы в массиве есть)
C++ Дан массив а, состоящий из n целых чисел (n < = 100). Найти количество максимальных элементов массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Firework
57 / 81 / 21
Регистрация: 01.04.2013
Сообщений: 567
04.10.2013, 10:08     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. #2
Цитата Сообщение от egor_zar Посмотреть сообщение
Написать программу по шагам
1)Отсортировать массив по возрастанию.
2)Найти 5 последних элементов.
3)??????????????
4)PROFIT!!!!!!!!
Мимино
 Аватар для Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
04.10.2013, 10:17     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. #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
32
33
34
35
36
37
38
#include <iostream>
#include <stdlib.h>
#include <time.h>
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int H = 15;
    int A[H];
    int temp;
 
    srand(time(NULL));
    cout << "Массив: ";
    for (int i = 0; i < H; i++)
    {
        A[i] = 1 + rand() % 100;
        cout << A[i] << ' ';
    }
 
    for (int i = 1; i < H; i++)
        for (int j = 0; j < H - 1; j++)
            if (A[j] < A[j + 1])
            {
                temp = A[j];
                A[j] = A[j + 1];
                A[j + 1] = temp;
            }
 
    cout << endl << "5 максимальных элементов массива: ";
    for (int i = 0; i < 5; i++)
        cout << A[i] << ' ';
 
    cout << endl << endl;
 
    system("pause");
    return 0;
}
dzrkot
zzzZZZ...
 Аватар для dzrkot
516 / 346 / 53
Регистрация: 11.09.2013
Сообщений: 1,977
04.10.2013, 12:58     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. #4
вот, для произвольного массива, размерность вводится в ручную, т.е. Н не константа, так что задачу я решил считай что не верно, но она удовлетворяет и твоим условиям)) ищем так же 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
#include <cstdlib>
#include <time.h>
#include <iomanip>
using namespace std;
int main()
{
    srand(time(0));
int *b,*maxValue; // указатель на массив с элементами
int x,y;
cout<<"Enter the line array x"<<endl;
cin>>x;
cout<<"Enter the line array y"<<endl;
cin>>y;
int **a = new int*[x]; // определяем указатель на массив указателей
maxValue = new int[y];
for (int count=0;count<x;count++)
    {
    int max=b[0];
    b=new int[y]; //выделяем память под массив с элементами
        for (int i=0;i<y;i++)
        {
        b[i]=0+rand()%99;
        cout<< setw(3)<<b[i]<<"  ";
        }
        for (int i=0;i<y;i++)
        {
 
            if (b[i]>max)
            max=b[i];
        }
    cout<<endl;
    a[count]=b;
    maxValue[count]=max;
    }
int maxMaxValue=maxValue[0];
 
    for (int i=0;i<x;i++)
    {
    cout<<endl;
    cout<<"maxValue all array ["<<i<<"] = "<<maxValue[i];
    }
cout<<endl;
for (int y=0;y<5;y++) 
{
    for (int i=0;i<x;i++) 
         if (maxMaxValue<maxValue[i])
            maxMaxValue=maxValue[i];
    for (int i=0;i<x;i++)
        if (maxMaxValue==maxValue[i])
            maxValue[i]=0;
 
    cout<<"\nmax of 5 ["<<y<<"] = "<<maxMaxValue;
    maxMaxValue=0;
}
cout<<endl;
cout<<endl;
for (int i=0;i<x;i++)
{
    for (int k=0;k<y;k++)
    cout<<setw(3)<<*(a[i]+k)<<"  ";
cout<<endl;
}
delete []a;
delete []b;
delete []maxValue;
return 0;
}
Alexdemath
 Аватар для Alexdemath
125 / 122 / 6
Регистрация: 11.04.2010
Сообщений: 253
04.10.2013, 18:45     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов. #5
Полная сортировка не обязательна

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
  float result[5];  // Сюда будем записывать искомые элементы
 
  for (int i = 0; i < 5; i++)
   { int max = i;
 
     for (int j = i+1; j < N-1; j++)  // N - количество элементов в A.
      { if (A[j] > A[max]) max = j; }
 
     if (max != i)
      { float temp = A[i]; A[i] = A[max]; A[max] = temp; }
     
     result[i] = A[i];
   }
Yandex
Объявления
04.10.2013, 18:45     Дан массив А на Н элементов (Н-константа). В массиве найти пять максимальных элементов.
Ответ Создать тему
Опции темы

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