Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 04.01.2013, 13:42   #1
pashqacpp
 
Аватар для pashqacpp
 
Регистрация: 04.01.2013
Сообщений: 3
Вопрос Задание из книги - рекурсия

Начал изучать самостоятельно с++(Джеси Либерти Освой сам.. за 21 день)

И вот там было задание которое сразу загнало меня в тупик - вообще не понимал что писать) Ну и просто стал писать...

Задание:
Цитата:
Напишите программу, которая запрашивает число и показатель степени. Напишите рекурсивную функцию, которая возводит число в степень путем многократного умножения числа на самое себя, т.е. если число равно 2, а показатель степени равен 4, то функция должна возвратить число 16
Вот что написал я:
Код:
#include <iostream.h>

int s(int, int);

int main()
{
	int n, c, r; // число, степень, результат

	cin >> n; cin >> c;

	r = s(n, c);

	cout << r << endl;
		
	return 0;
}

int s(int n, int c)
{
	if (c<1)
		return 1;
	else
		return (n*(s(n, c-1)));
}
Так вот) Верно ли мое решение или есть более оптимальный вариант?
pashqacpp вне форума Ответить с цитированием
Старый 04.01.2013, 14:39   #2
EUGY
Форумчанин
 
Аватар для EUGY
 
Регистрация: 11.07.2010
Сообщений: 913
По умолчанию

Разве что, попридираться
Код:
int s(int n, unsigned int c)
{
	return c ? n * s(n, c - 1) : 1;
}
EUGY вне форума Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись данных в закрытую/скрытую из UserForm другой открытой книги книги. Dark Victor Microsoft Office Excel 1 12.03.2012 18:37
Автоматическое создание новой книги с экспортом данных из предыдущей книги S_Brodsky Microsoft Office Excel 5 17.02.2012 12:17
Макрос активной книги открывает книги xlsm содержащих auto_open Daren Microsoft Office Excel 0 28.01.2011 10:34
Скопировать данные из некоторых ячеек одной книги в другие книги fcunited Microsoft Office Excel 8 09.06.2010 12:14