• Вычислить сумму элементов рекурсии:
    S=a1+a2+...+an
    где
    an=n!/(2^n)!

Ответы 1

  • Из-за дурацкого сбоя этого сервиса при сохранении ответа пропал получасовой набор формул в LaTex. Прошу модераторов удалить этот ответ.P.S. Набираешь ответ - как по минному полю идешь. При нажатии "сохранить" неизвестно что произойти может. Например, при случайном нажатии "сохранить ответ" (каждый может ошибиться) нет анализа, того, что в поле набора данных не пусто и весь этот набор формул мгновенно "улетает в никуда".Я уж не говорю о постоянных "Вы были отключены от сервера".И еще. Поскольку автор вопроса не виноват, даю два "голых" (без формул) решения.1. Рекурсивная программа (как не надо решать подобные задачи){ рекурcивная программа }function prod(a,b:integer):real;var  i:integer;  p:real;begin  p:=1;  for i:=a to b do p:=p*i;  prod:=pend;function pow2(n:integer):integer;var  i,p:integer;begin  p:=1;  for i:=1 to n do p:=p*2;  pow2:=pend;function an(n:integer):real;begin  if n=1 then an:=0.5  else an:=an(n-1)*n/prod(pow2(n-1)+1,pow2(n))end;var  s:real;  i,n:integer;begin  Write('n='); Read(n);  s:=0;  for i:=1 to n do s:=s+an(i);  Writeln(s)end.Пример:n=40.583482142858292. А вот рекуррентная, которую можно написать, если немного подумать.{ рекуррентная программа }var  a,p,s:real;  i,j,n,lo,hi:integer;begin  Write('n='); Read(n);  a:=0.5; s:=a; lo:=1; hi:=2;  for i:=2 to n do begin    p:=1; lo:=hi+1; hi:=hi*2;    for j:=lo to hi do p:=p*j;    a:=a*i/p;    s:=s+a    end;  Writeln(s)end.Примерn=40.58348214285829
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years