Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Помогите закодировать функцию

Автор: exp0 6.11.2008 7:02

Доброго времени суток !
Паскаль я немного помню (в отличии от математики), но вот как закодировать функцию, чтобы вычислить:
y=(2n)!=2*4*....*(2n), n>0
.. и вообще можно ли? или условие неполное?
Помогите пожалуйста smile.gif

Автор: Lapp 6.11.2008 9:10

Цитата(exp0 @ 6.11.2008 3:02) *
y=(2n)!=2*4*....*(2n), n>0
.. и вообще можно ли? или условие неполное?
Условие не неполное, а неверное. Дело в том, что (2n)! не равно 2*4*....*(2n). Оно равно 2*3*4*5*..*(2n-1)*2n . А если тебе нужно 2*4*....*(2n), то это будет (2^n)*n! . Так что, ты, уж, будь добр, определись..

Что касается программирования факториала, то ничего невозможного тут нет:
function Factorial(n:integer):integer;
begin
if n=0 then Factorial:=1 else Factorial:=n*Factorial(n-1)
end;

Только нужно аккуратнее с параметрами.. Факториал очень быстро растет и легко выскакивает за диапазон integer.

Автор: exp0 7.11.2008 0:17

Спасибо за функцию факториала, да действительно условие было дано с ошибкой, думаю теперь сам справлюсь.