![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Я только Учусь
Форумчанин
Регистрация: 06.03.2013
Сообщений: 193
|
![]()
Написать функцию, которая рекурсивно вычисляет сумму чисел в заданном диапазоне
Код:
как задать диапазон плиз Последний раз редактировалось mixon-21; 20.05.2013 в 17:27. |
![]() |
![]() |
![]() |
#2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
У Вас приведен код вычисления факториала числа с помощью рекурсии.
Этот код практически никак не коррелирует с задачей (не считая использования рекурсии).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#3 |
Я только Учусь
Форумчанин
Регистрация: 06.03.2013
Сообщений: 193
|
![]()
А с чего начать подскажите плиз
|
![]() |
![]() |
![]() |
#4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Для начала, придумать, как применить рекурсию.
Например: Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#5 |
Я только Учусь
Форумчанин
Регистрация: 06.03.2013
Сообщений: 193
|
![]()
а можно коменты плиз
|
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Нет, тогда Вам вообще ничего не останется делать
![]() Возьмите для примера sum(1,3) и sum(1,4). На бумаге осуществите все "вызовы". Если проделаете это честно, то разберетесь в рекурсии хоть немного.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#7 |
Я только Учусь
Форумчанин
Регистрация: 06.03.2013
Сообщений: 193
|
![]()
ок буду думать
|
![]() |
![]() |
![]() |
#8 |
Я только Учусь
Форумчанин
Регистрация: 06.03.2013
Сообщений: 193
|
![]()
В циклах код такой
Код:
Правильно?????????????????????? ![]() |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
Изрядная часть рекурсивных построений следует довольно простой схеме:
1) Сказать: "пусть у нас есть требуемая нам функция" (пусть S(a,b) - функция суммы чисел от a до b). 2) Найти какие-то условия, при которых значение функции уже известно (если b<a, то S(a,b)=0). 3) Придумать, увидеть инвариант - некое соотношение между функцией и её аргументами (если a<=b, то S(a,b) = a+S(a+1,b)). Желательно выстроить такую функцию, что по обе стороны равенства инварианта находятся только значения функции при разных аргументах (R(a,b,c) такова, что R(a,b,0)=S(a,b), при b<a R(a,b,c)=c, при a<=b R(a,b,c)=R(a+1,b,a+c)). 4) Воплотить в коде. Функция R - это по сути Ваш цикл, R(i,b,sum)=R(i+1,b,sum+i) - итерация цикла; начали с R(a,b,0), обратите внимание. |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
![]()
(дубль, удалено)
|
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
рекурсии | fre | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 03.04.2012 09:59 |
Организация рекурсии | Rekky | Общие вопросы C/C++ | 6 | 24.08.2011 17:22 |
Задача по рекурсии | Болванка | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 21.12.2010 16:01 |
Рекурсии | RAMA | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 18.10.2009 13:56 |
Рекурсии | Logan | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 13.05.2008 08:52 |