platan3698952
?>

Синформатикой, нужно , : (решение с параметром, язык 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)* n/(n+1) - (cos^n)* x))

Информатика

Ответы

alyonafialka

// №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.

 

suhanowaswetlana
Uses   crt; var   a: array [1..25] of integer;       ar: array [1..5, 1..5] of integer;   i, j, k, n, m, x: integer; begin   write('n=');           readln(n);           writeln('заполните массив: ');           for i : = 1 to n do read(a[i]);           for i : = 1 to n do              for j : = i + 1 to n do                  if a[i] > a[j] then begin               x : = a[i];                           a[i] : = a[j];                           a[j] : = x;                   end;           writeln('отсортированный массив: ');           for i : = 1 to n do write(a[i], ' ');           writeln;   n : = floor(sqrt(n));   m : = sqr(n);   writeln('двумерный массив: ');   for k : = 1 to m do   begin       x : = (k - 1) div n;       j : = n - x;       if x mod 2 = 0 then           i : = n * (x + 1) + 1 - k       else           i : = k - n * x;       ar[i, j] : = a[k]   end;           for i : = 1 to n do   begin       for j : = 1 to n do write(ar[i, j]: 4);                       writeln   end end. тестовое решение: n=16 заполните массив: 1 3 5 7 9 11 13 15 2 4 6 8 10 12 14 16 отсортированный массив: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 двумерный массив:   13  12    5    4   14  11    6    3   15  10    7    2   16    9    8    1 n=25 заполните массив: 1 3 5 7 9 11 2 4 6 8 10 12 14 13 16 17 15 20 18 19 23 25 22 21 24 отсортированный массив: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 двумерный массив:   25  16  15    6    5   24  17  14    7    4   23  18  13    8    3   22  19  12    9    2   21  20  11  10    1
Minchenkova

ответ:Вариант №1 (не совсем удачный, как было отмечено в комментариях).

//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016)

var n,i,m:integer;

flag:boolean;

begin

 readln(n);

 flag:=false;

 if (n mod 2<>0)then i:=n-1 else i:=n;

 while i>0 do begin  

   if power(2,i)<=n then begin

     write(power(2,i),' '); flag:=true;

   end;

   i:=i-2;

end;

if not flag then writeln(0);

end.

Тест №1

1025

1024 256 64 16 4

Тест №2

1

0

Вариант №2

var a,i,n: integer;

begin

 a:=1;readln(n);

 i:=trunc(log2(n)); //получим степень двойки для n

 //если i нечетное,

 //то первое искомое число получаем путем сдвига влево на i-1 в

 //двоичном представлении числа иначе сдвиг на i

 if (i mod 2)=1 then a:=a shl(i-1) else a:=a shl i;

 //далее получаем числа сдвигая вправо на 2 разряда

 //в двоичном представлении числа

 while a>=2 do begin

   write(a,' ');

   a:=a shr 2;

 end;

end.

Тестовое решение:

2147483647

1073741824 268435456 67108864 16777216 4194304 1048576 262144 65536 16384 4096 1024 256 64 16 4

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Синформатикой, нужно , : (решение с параметром, язык 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)* n/(n+1) - (cos^n)* x))
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Андрееевич787
соловьев_Куркина
Gennadievna bessonov
Дмитрий-Олейникова
vallzh8328
svetarakityanskaya
Акимцева27
osipovasalex5316
Liliya-buc
Ofelya1308
teya07
Mbkozlov6
kisuhakisa
ПетровичЖивотовская1245
annakuznetsova841