|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.01.2010, 15:32 | #1 |
Регистрация: 10.01.2010
Сообщений: 8
|
рекурсия
помогите довести до ума рекурсию
нужно для сокращения числа итераций учесть свойство симетрии c(n,r)=c(n, n-r) program fPaskal; var r,n:integer; function c(r,n:integer):integer; begin if (r=0) or (r=n) then c:=1 else c:=c(n-1,r)+c(n-1,r-1); end; begin writeln('n i r'); readln(n,r); writeln(c(n,r)); end. |
14.01.2010, 16:40 | #2 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
вар1 if r>n div 2 then c:=c(n, n-r)
вар2 if n-r<r then c:=c(n,n-r)
программа — запись алгоритма на языке понятном транслятору
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Рекурсия. | p@ul | Помощь студентам | 4 | 30.12.2009 14:46 |
Рекурсия | Golovastik | Общие вопросы C/C++ | 7 | 15.09.2009 20:36 |
Рекурсия. Си. | MAKEDON | Помощь студентам | 5 | 03.06.2009 17:52 |
Рекурсия | vitekbest | Помощь студентам | 1 | 30.05.2008 22:22 |
Рекурсия | Xeon332 | Помощь студентам | 5 | 16.01.2008 20:52 |