ПОМОГИТЕ ПОЖАЛУЙСТА С ИНФОРМАТИКОЙ,НУЖНО ОЧЕНЬ СРОЧНО,:

(решение задач с параметром,язык PASCAL)

№1)дано натуральное n, вычислить:

а) -2/1! +3/2! -...+ (-1)^n *(n+1)/n! (n после единицы это степень)

б) 1!/1+ 2!/ (1+1/2) +....+ n!/ (1+1/2+...+1/n)

№2) дано натуральное n, действительное х, вычислить:

а) x^1 / 1! + x^2 /2+...+ x^n / n!

б)(1/2 - cosx)(2/3-(cos^2)*x)).....( n/(n+1) - (cos^n)* x))

1

Ответы и объяснения

  • Tlalok
  • почетный грамотей
2013-03-11T21:20:06+04:00

// №1 а)

 

function Fact(n:integer):integer;

var

  rez, i:integer;

begin

  rez := 1;

  for i := 1 to n do

    rez := rez * i;

  Fact := rez;

end;

 

function Pow(a, x:integer):integer;

var

  rez, i:integer;

begin

  rez := 1;

  for i := 1 to x do

    rez := rez * a;

  Pow := rez;

end;

 

var

  n, i:integer;

  R:real;

begin

  r := 0;

  write('n = '); readln(n);

  for i := 1 to n do

  begin

    r := r + Pow(-1, i mod 2) * (i + 1) / Fact(i);

  end;

  writeln('R = ', r);

end.

 

 

 

// №1 б)

 

function Fact(n:integer):integer;

var

  rez, i:integer;

begin

  rez := 1;

  for i := 1 to n do

    rez := rez * i;

  Fact := rez;

end;

 

function Summ(n:integer):real;

var

  i:integer;

  rez:real;

begin

  rez := 1;

  for i := 2 to n do

    rez := rez + 1/i;

  Summ := rez;

end;

 

var

  n, i:integer;

  R:real;

begin

  r := 0;

  write('n = '); readln(n);

  for i := 1 to n do

  begin

    r := r + Fact(i)/Summ(i);

  end;

  writeln('R = ', r);

end.

 

 

 

// №2 а)

 

function Fact(n:integer):integer;

var

  rez, i:integer;

begin

  rez := 1;

  for i := 1 to n do

    rez := rez * i;

  Fact := rez;

end;

 

function Pow(a:real; x:integer):real;

var

  i:integer;

  rez:real;

begin

  rez := 1;

  for i := 1 to x do

    rez := rez * a;

  Pow := rez;

end;

 

var

  n, i:integer;

  R, x:real;

begin

  r := 0;

  write('n = '); readln(n);

  write('x = '); readln(x);

  for i := 1 to n do

  begin

    r := r + Pow(x, i) / Fact(i);

  end;

  writeln('R = ', r);

end.

 

 

 

// №2 б)

function Pow(a:real; x:integer):real;

var

  i:integer;

  rez:real;

begin

  rez := 1;

  for i := 1 to x do

    rez := rez * a;

  Pow := rez;

end;

 

var

  n, i:integer;

  R, x:real;

begin

  r := 1;

  write('n = '); readln(n);

  write('x = '); readln(x);

  for i := 1 to n do

  begin

    r := r * (i / (i + 1) - Pow(cos(x), i)) ;

  end;

  writeln('R = ', r);

end.