19 б!!! СРОЧНО!!! напишите, пожалуйста, программу в паскале!!! Вычислить...

0 голосов
18 просмотров

19 б!!! СРОЧНО!!!
напишите, пожалуйста, программу в паскале!!!
Вычислить р=а1*а2*а3*...*an, где аn= 2n-1/2^n (функция)

часть программы
for i:=1 to n do
a:=(2*i-1)/ f(2,i)
p:=p*a;

ПОЖАЛУЙСТА, 10 КЛАСС


Информатика (35 баллов) | 18 просмотров
Дано ответов: 2
0 голосов
Правильный ответ


var
p, a: real;
n,i:integer;

function f(n, i: integer):integer;
var j,res :integer;
Begin
res:=1;
For j:= 1 to i do
res:= res * n;
f:= res;
end;

begin
readln(n);
p:= 1;
for i:= 1 to n do begin
  a:=(2*i-1)/f(2,i);
  p:= p*a;
  end;
  Writeln('P = ', p:0:16);
end.

// P.S. Функция замедлит работу программы.
(8.8k баллов)
0

учитель сказал с функцией. Спасибо большое!

0 голосов
// PascalABC.NET 3.3, сборка 1573 от 04.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('n=');
  var (p,z):=(1.0,1.0);
  for var i:=1 to n do begin
    z*=2;
    p*=(2*i-1)/z
    end;
  Writeln('P = ',p)
end.

Пример
n=10
P = 1.81723823489133E-08
(150k баллов)