Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
S0kkadt
0 / 0 / 4
Регистрация: 16.02.2017
Сообщений: 20
#1

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

22.02.2017, 10:53. Просмотров 212. Ответов 1
Метки нет (Все метки)

Нужна сделать поиск максимального элемента массива путем деления пополам не через рекурсию, а через цикл.
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
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
 
int maxs(double*, int);
 
int _tmain(int argc, _TCHAR* argv[])
{
    randomize();
    double n;
    int i;
    cin >> n;
    double* a = new double[n];
    for (i = 0; i < n; i++)
        *(a + i) = random(10);
    for (i = 0; i < n; i++)
        cout << *(a + i) << " ";
    double r=maxs(a,n-1);
    cout<<r;
    getch();
    return 0;
double maxs(double* a, int n)
{
    if (n == 0)
        return a[0];
    double r1 = maxs(a, n / 2);
    double r2 = maxs(a + n / 2 + 1, n - 1);
    return max(r1, r2);
}
 
}
Добавлено через 1 час 44 минуты
Корректный код
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 <stdio.h>
#include <stdlib.h>
#include <iostream.h>
#include <conio.h>
 
int maxs(double*, int);
 
int _tmain(int argc, _TCHAR* argv[])
{
    randomize();
    double n;
    int i;
    cin >> n;
    double* a = new double[n];
    for (i = 0; i < n; i++)
        *(a + i) = random(10);
    for (i = 0; i < n; i++)
        cout << *(a + i) << " ";
    double r=maxs(a,n-1);
    cout<<r;
    getch();
    return 0;
}
double maxs(double* a, int n)
{
    if (n == 0)
        return a[0];
    double r1 = maxs(a, n / 2);
    double r2 = maxs(a + n / 2 + 1, n - 1);
    return max(r1, r2);
}

http://www.cyberforum.ru/cpp-beginners/thread2164049.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2017, 10:53
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Поиск максимального элемента (C++):

Поиск максимального элемента вектора
Написала программу поиска максимального элемента вектора, только теперь её надо...

Поиск максимального элемента дерева
Добрый день! Помогите пожалуйста реализовать поиск максимального элемента в...

Поиск максимального элемента массива
Всем вечер добрый Вот моя ситуация: дано два одномерных массива А и Б...

Поиск максимального элемента по модулю
Дана целочисленная прямоугольная матрица А. Составить новую матрицу В из тех...

Поиск максимального элемента в файле
Доброго времеи суток. Не подскажие, как осуществить поиск максимального элемета...

1
liv
375 / 342 / 124
Регистрация: 07.10.2015
Сообщений: 1,281
Завершенные тесты: 1
22.02.2017, 11:18 #2
Метод половинного деления не для поиска максимального элемента, тем более для произвольного массива...
Намного проще просто просмотреть и найти.
Задание какое-то странное.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2017, 11:18
Привет! Вот еще темы с решениями:

Поиск минимального и максимального элемента в матрице
Помогите в моем коде реализовать поиск минимального и максимального элемента ...

Осуществить поиск индекса максимального элемента
Нужно найти индекс макс. эл-та. Ошибку я нашел, а вот как ее исправить - не...

Рекурсия, поиск второго максимального элемента
Не получается выполнить задание: Данная последовательность натуральных чисел...

Написание функции на С++ (поиск максимального элемента)
Написать функцию поиска максимального элемента, использовать ее для поиска...


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

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

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