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

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

Войти
Регистрация
Восстановить пароль
 
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
#1

Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива - C++

27.09.2012, 11:17. Просмотров 889. Ответов 5
Метки нет (Все метки)

Помогите решить
Напишите рекурсивную функцию recursiveMinimum, которая принимает массив
и размер массива как аргументы и возвращает наименьший элемент массива.
Функция должна прекращать свою работу и возвращаться, если принимаемый
массив имеет один элемент.

Вот что у меня получилось Дальше не знаю как сделать.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include "iostream"
using namespace std;
 
int recursiveMinimum(const int arr[], int size)
{
    if (size == 1) return arr[size-1];
    else
        ...
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    
 
    system("pause");
    return 0;
}
Мне бы эту функцию дописать. recursiveMinimum()
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2012, 11:17     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива
Посмотрите здесь:

Создать рекурсивную функцию, которая возвращает наименьший элемент массива - C++
Задача: Напишите рекурсивную функцию, которая принимает массив и размер массива как аргументы и возвращает наименьший элемент массива. ...

Составить рекурсивную функцию, которая находит наименьший элемент массива из реальных чисел - C++
double min(double* arr, int n); Примеры double arr = {4.1, 2.0, 5.3, 7.2}; min(arr, 4); // -> 2.0 Заранее благодарю

Создать функцию min, которая находит наименьший элемент вещественного массива А размера N - C++
Дан массив A размера N найти минимальный элимент. написать функцыю ввода масива, функцыю поиска минимального элимента и...

Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел - C++
!!!!!

Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел - C++
Напишите рекурсивную функцию, которая возвращает среднее из n элементов массива чисел. помогите сделать с помощью функции или процедуры !...

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

Написать функцию getElem, которая возвращает ссылку на i - тый элемент массива - C++
Задача: Первое решение учитильница не принила. Сказала что все не правильно. Я эту задачу перерешал в 4 варантах. Все они очень...

Создать функцию, которая возвращает количество отрицательных элементов массива - C++
Создать функцию, которая возвращает количество отрицательных элементов массива. Массив передается функции в качестве параметра через...

Создать функцию, которая возвращает количество двузначных элементов массива - C++
2. Создайте функцию, которая принимает в качестве аргументов целочисленный массив и размер этого массива, а возвращает количество...

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

Создать функцию, которая возвращает количество элементов массива, меньших чем число, заданное пользователем. Массив целочисленный, передается функции - C++
Добрый вечер! Помогите пожалуйста) Создать функцию, которая возвращает количество элементов массива, меньших чем число, заданное...

Написать рекурсивную функцию, которая находит минимальный элемент в матрице (двумерном массиве). - C++
Написать рекурсивную функцию, которая находит минимальный элемент в матрице (двумерном массиве). Добавлено через 2 часа 11 минут ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vndtta
88 / 65 / 13
Регистрация: 17.10.2011
Сообщений: 223
Завершенные тесты: 1
27.09.2012, 11:48     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива #2
C++
1
2
3
4
5
6
7
8
9
10
int recursiveMinimum(const int arr[], int size)
{
    if (size == 1) return arr[0];
    else
        {
                int a=recursiveMinimum(arr,size/2);
                int b=recursiveMinimum(arr+size/2,size-size/2);
                return a>b?a:b;
        }
}
как-то так
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
27.09.2012, 12:13  [ТС]     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива #3
Так она у меня максимальное возвращает. А если поменять return a>b?a:b; То тогда минимальное.
C++
1
return a<b?a:b;
Спасибо
Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
27.09.2012, 13:15     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива #4
Цитата Сообщение от vndtta Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
int recursiveMinimum(const int arr[], int size)
{
    if (size == 1) return arr[0];
    else
        {
                int a=recursiveMinimum(arr,size/2);
                int b=recursiveMinimum(arr+size/2,size-size/2);
                return a>b?a:b;
        }
}
как-то так
А можете подробнее расписать?
А то я с рекурсией как-то не могу подружиться совсем....почему bvtyyj siize\2 b arr+size/2/////size-size\2.......
Почему так а не по другому?
как вы строите алгоритм чтобы определить что нужно возвращать?....
vndtta
88 / 65 / 13
Регистрация: 17.10.2011
Сообщений: 223
Завершенные тесты: 1
27.09.2012, 13:48     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива #5
Цитата Сообщение от Elfenlide Посмотреть сообщение
А можете подробнее расписать?
А то я с рекурсией как-то не могу подружиться совсем....почему bvtyyj siize\2 b arr+size/2/////size-size\2.......
Почему так а не по другому?
как вы строите алгоритм чтобы определить что нужно возвращать?....
ну это просто массив разделенный на две части
мы возвращаем минимум из 2 результатов рекурсивного вызова по каждой части массива
min( min(arr{0} arr{1} ... arr{ [size/2] -1 } ) min( arr{ [size/2] } arr{ [size/2]+1 } ... arr{ size-1 } )

можно разделить на 3 части и или 10 все равно,
можно брать элемент и сравнить его с минимумом оставшейся части массива
C++
1
2
3
4
5
...
else{
   int tmp=recursiveMinimum(arr,size-1)
   return arr[size-1]<tmp?arr[size-1]:tmp;
}
просто в условии ничего нет о том какой метод использовать
Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
27.09.2012, 14:03     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива #6
Цитата Сообщение от vndtta Посмотреть сообщение
ну это просто массив разделенный на две части
мы возвращаем минимум из 2 результатов рекурсивного вызова по каждой части массива
min( min(arr{0} arr{1} ... arr{ [size/2] -1 } ) min( arr{ [size/2] } arr{ [size/2]+1 } ... arr{ size-1 } )

можно разделить на 3 части и или 10 все равно,
можно брать элемент и сравнить его с минимумом оставшейся части массива
C++
1
2
3
4
5
...
else{
   int tmp=recursiveMinimum(arr,size-1)
   return arr[size-1]<tmp?arr[size-1]:tmp;
}
просто в условии ничего нет о том какой метод использовать
Понятно, спасибо
Yandex
Объявления
27.09.2012, 14:03     Создать рекурсивную функцию recursiveMinimum, которая возвращает наименьший элемент массива
Ответ Создать тему
Опции темы

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