Написать эту программку на С++ используя рекурсию

Написать эту программку на С++ используя рекурсию

Задать свой вопрос
2 ответа

include lt;iostreamgt;

include lt;vectorgt;


int min_possitive(int a, int b)

if (a gt; 0)

 if (b gt; 0)

 

  return a lt; b ? a : b;

 

 else

 

  return a;

 

else if (b gt; 0)

 return b;

else

 // Ошибка в случае если 2 числа отрицательны либо равны 0

 return -1;


int min(std::vectorlt;intgt; vec, int size)

int temp;

if (size == 1)

 return vec[0];


temp = min(vec, --size);


return min_possitive(vec[size], temp);


int main()

std::vectorlt;intgt; vec(10);


std::cout lt;lt; "Enter 10 numbers separated by a space: ";

for (autoamp; val : vec)

 std::cin gt;gt; val;


int min_p = min(vec, vec.size());

if (min_p == -1)

 std::cout lt;lt; "No positive numbers!" lt;lt; std::endl;

else

 std::cout lt;lt; "Min == " lt;lt; min_p lt;lt; std::endl;

return 0;

Валерий
У вас ветхий компилятор не поддерживает новый стандарт языка c++
Алла Брайович
Так обязано работать
Агата Статная
int min_possitive(int a, int b) if (a > 0) if (b > 0) if (a < b) return a; else return b; else return a; else if (b > 0) return b; else // Ошибка в случае если 2 числа отрицательны либо равны 0 return -1;
Славик Компаниченко
int min(std::vector vec, int size) int temp; if (size == 1) return vec[0]; temp = min(vec, --size); return min_possitive(vec[size], temp);
Геннадий Чутанов
int main() std::vector vec(10); std::cout << "Enter 10 numbers separated by a space: "; for (int i = 0; i < vec.size(); ++i) std::cin >> vec[i]; int min_p = min(vec, vec.size()); if (min_p == -1) std::cout << "No positive numbers!" << std::endl; else std::cout << "Min == " << min_p << std::endl; return 0;

// factorial.cpp: определяет точку входа для консольного прибавленья.

include "stdafx.h"

include lt;iostreamgt;

using namespace std;

unsigned long int factorial(unsigned long int);// макет рекурсивной функции

int i = 1; // инициализация глобальной переменной для подсчёта кол-ва рекурсивных вызовов

unsigned long int result; // глобальная переменная для хранения отдаваемого результата рекурсивной функцией

int main(int argc, char* argv[])

int n; // локальная переменная для передачи введенного числа с клавиатуры

cout lt;lt; "Enter n!: ";

cin gt;gt; n;

cout lt;lt; n lt;lt; "!" lt;lt; "=" lt;lt; factorial(n) lt;lt; endl; // вызов рекурсивной функции

system("pause");

return 0;

unsigned long int factorial(unsigned long int f) // рекурсивная функция для нахождения n!

if (f == 1 f == 0) // базисное либо приватное решение

return 1; // все мы знаем, что 1!=1 и 0!=1

cout lt;lt; "Step\t" lt;lt; i lt;lt; endl;

i++; // операция инкремента шага рекурсивных вызовов

cout lt;lt; "Result= " lt;lt; result lt;lt; endl;

result = f * factorial(f - 1); // функция вызывает саму себя, причём её аргумент уже на 1 меньше

return result;

, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
задание экономиоти Рассмотри ситуацию: человек живёт на Крайнем Се-вере. С помощью каких

Экономика.

Человек живет на Крайнем Севере. С помощью каких благ удовлетворяются потребности

Экономика.

там лежат три яйца.у дома рос клен.Это гнездо сойки.на клёне гнездо

Русский язык.

Тыныштық күйіндегі карусель 35 с-та 3,0 рад/с бұрыштық жылдамдықпен үдей қозғалады.

Разные вопросы.

Сочинение на тему "Русский язык не сможет умереть!"

Математика.

Приветствую! Меня зовут Станислав, я представляю компанию under.site. Хотел бы предложить интересное решение

Разные вопросы.

Масса трёх одинаковых пакетов чая 180г чему равна масса

Математика.

Газообразный аммиак объёмом 2.24 л (н.у.) был полностью поглощён 14.68 мл

Химия.

Упражнение 2 Выпишите глаголы и вставьте пропущенные буквы

Русский язык.

Радиус окружности, описанной около равностороннего треугольника, равен 6. Найдите сторону треугольника

Геометрия.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт