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

В одномерном массиве найти максимальный элемент - C++

Восстановить пароль Регистрация
 
Igor18
2 / 2 / 0
Регистрация: 09.03.2015
Сообщений: 84
07.12.2015, 21:06     В одномерном массиве найти максимальный элемент #1
В одномерном массиве, состоящем из n целых элементов, найти максимальный элемент, и
поменять порядок следования всех элементов на противоположный (перевернуть массив).
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>
 
int main()
{
    char menu;
    int *x, n;
    bool flag = false;
    setlocale(LC_CTYPE, "Russian");
    for (;;)
    {
        printf("\nМеню\n");
        printf("1. Ввод элементов массива\n");
        printf("2. Обработка массива\n");
        printf("3. Вывод на экран\n");
        printf("4. Выход\n");
   
        fflush(stdin);
        scanf("%c", &menu);
 
        if (menu == '1')
        {
            for (;;)
            {
                fflush(stdin);
                printf("Введи размер массива: ");
                if (scanf("%d", &n) == 0)
                    printf("\nНеверное значение, ещё раз ");
                else if (n < 0 || n > 20)
                    printf("\nНеподходящий размер, ещё раз ");
                else
                    break;
            }
            
            if (flag)
            {
                delete []x;
            }
            x = new int[n];
            printf("\n1. Ввести элементы с клавиатуры\n");
            printf("2. Заполнить массив случайными элементами\n");
            fflush(stdin);
            scanf("%c", &menu);
 
            if (menu == '1')
            {
                for (int i=0; i<n;)
                {
                    printf("Элемент №%d: ", i+1);
                    fflush(stdin);
                    if (scanf("%d", &x[i]))
                    {
                        i++;
                    }
                }
            }
            else if ( menu == '2')
            {
                srand (time(NULL));
                for (int i=0; i<n; i++)
                {
                    x[i] = rand() % 20 - 10;
                }
            }
            flag = true;
        }
 
        else if (menu == '2')
        {
            if (flag)
            {
                int temp;
                for (int i=n-1; i>0; i--)
                {
                    for (int j=0; j<i; j++)
                    {
                        if (x[j] < x[j+1])
                        {
                            temp = x[j];
                            x[j] = x[j+1];
                            x[j+1] = temp;
                        }
                    }
                }
            }
            else
                printf("\nМассив пуст\n");
        }
 
        else if (menu == '3')
        {
            if (flag)
            {
                printf("\nМассив:\n");
                for (int i=0; i<n; i++)
                    printf("%d ", x[i]);
            }
            else
                printf("\nМассив пуст\n");
        }
 
        else if (menu == '4')
            break;
    }
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2015, 21:06     В одномерном массиве найти максимальный элемент
Посмотрите здесь:

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

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
07.12.2015, 21:25     В одномерном массиве найти максимальный элемент #2
Перевернуть массив:
C++
1
2
3
4
5
6
7
for (int i(0); i < N; i++)
    {
        int tmp;
        tmp = arr[i];
        arr[i] = arr[n-i-1];
        arr[n-i-1] = tmp;
    }
Добавлено через 1 минуту
Максимальный элемент:
C++
1
2
3
4
5
6
int max = mas[0];
    for (int i = 0; i < n; i++)
    {
            if (mas [i] > max)
            max = mas[i]; 
    }
Yandex
Объявления
07.12.2015, 21:25     В одномерном массиве найти максимальный элемент
Ответ Создать тему
Опции темы

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