М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
koshka99
koshka99
16.06.2021 14:13 •  Информатика

Составиь программу в среде pascal вычислить сумму четных и нечетных членов последовательности с общим членом ak=(k+1)/(2k)2, где k =1,2,

👇
Ответ:
Vvyq
Vvyq
16.06.2021
\displaystyle A_k= \frac{k+1}{(2k)^2}, \quad k=1,2, ...,\,17
 \\ \\ A_k= \frac{k+2}{4(k+1)^2}, \quad k=0,1, ...\,, 16

// PascalABC.NET 3.2, сборка 1488 от 21.06.2017
// Внимание! Если программа не работает, обновите версию!

№1 Обычный вариант

begin
  var s:=SeqGen(17,k->(k+2)/(4*Sqr(k+1)));
  Writeln('Сумма четных членов ',s.Where((x,i)->i.IsOdd).Sum);
  Writeln('Сумма нечетных членов ',s.Where((x,i)->i.IsEven).Sum);
end.

Результат
Сумма четных членов 0.43519602111678
Сумма нечетных членов 0.821643794807771

№2. Вариант "для шибко умных" (с классом для простых дробей)

type
  fraction=class
  public
  numerator:BigInteger;
  denominator:BigInteger;
 
  class function GCD(a,b:BigInteger):BigInteger;
    begin
    while b<>0 do (a,b):=(b,a mod b);
    Result:=a
    end;
 
  constructor Create(num:BigInteger:=0; denom:BigInteger:=1);
    begin
    var n:=GCD(num,denom);
    numerator:=num div n;
    denominator:=denom div n
    end;
 
  class function operator +(a,b:fraction):fraction;
    begin
    var n:=GCD(a.denominator,b.denominator);
    Result:=new fraction(a.numerator*(b.denominator div n)+
        b.numerator*(a.denominator div n),a.denominator div n*b.denominator);
    end;
   
  class procedure operator +=(var R:fraction; a:fraction);
    begin
    R:=R+a;
    end;
       
end;

  function Frc(a,b:BigInteger):fraction;
  begin
    Result:=new fraction(a,b);
  end;
 
  function Sumf(Self:sequence of fraction):fraction; extensionmethod;
  begin
    Result:=new fraction;
    foreach var fr in Self do Result+=fr;
  end;
 
  function ToReal(Self:BigInteger):(real,integer); extensionmethod;
  begin
    var s:=Self.ToString;
    var r:real;
    if Real.TryParse(s,r) then Result:=(r,0)
    else Result:=(s.Left(16).ToReal,s.Length-16)
  end;
 
  function ToReal(Self:fraction):real; extensionmethod;
  begin
    var a:=Self.numerator.ToReal;
    var b:=Self.denominator.ToReal;
    Result:=a[0]/b[0]*Power(10,a[1]-b[1])
  end;
 
  function Print(Self:fraction; s:string:=' '):fraction; extensionmethod;
  begin
    Result:=Self;
    if Self.denominator=1 then Write(Self.numerator,s)
    else Write(Self.numerator,'/',Self.denominator,s)
  end;
 
begin
  var f:=Range(2,17,2).Select(k->frc(k+1,Sqr(2*k))).Sumf;
  Write('Сумма четных членов '); f.Print; Writeln('= ',f.ToReal);
  f:=Range(1,17,2).Select(k->frc(k+1,Sqr(2*k))).Sumf;
  Write('Сумма нечетных членов '); f.Print; Writeln('= ',f.ToReal);

Результат
Сумма четных членов 4913189/11289600 = 0.43519602111678
Сумма нечетных членов 192723465457/234558414090 = 0.82164379480777
4,6(88 оценок)
Открыть все ответы
Ответ:
RomaAksenov2007
RomaAksenov2007
16.06.2021

Некоторые команды черепашки

Команды, описанные после начала конкурса

t.fillcolor(c)

Цвет заливки, например, сделать черепашку красной снаружи, жёлтой внутри:

t.color('red')

t.fillcolor('yellow')

t.begin_fill(), t.end_fill()

Начать и остановить заливку. Например, нарисовать жёлтый круг с красным контуром:

t.color('red')

t.fillcolor('yellow')

t.begin_fill()

t.circle(100)

t.end_fill()

Или, например, нарисовать жёлтый пятиугольник с красным контуром:

t.color('red')

t.fillcolor('yellow')

t.begin_fill()

t.circle(100, 360, 5)

t.end_fill()

Основные команды

t.backward(d)

Передвинуться назад на d пикселей, например, на 50:

t.backward(50)

t.circle(r)

Нарисовать круг радиусом r, например, 50 пикселей:

t.circle(50)

t.circle(r, angle, n)

Нарисовать дугу радиусом r, c углом angle и числом шагов n. Чем больше число шагов, тем плавнее дуга. Например, нарисуем дугу радиусом 50 пикселей, с углом 180 градусов и числом шагов 100:

t.circle(50, 180, 100)

t.circle(r, 360, n)

Нарисовать многоугольник с радиусом описанной окружности r и числом сторон n. Например, нарисуем шестиугольник с радиусом описанной окружности 100 пикселей:

t.circle(100, 360, 6)

t.color(c)

Изменить цвет на c. Рекомендуемые цвета:     -black,     -blue,     -brown,     -cyan,     -gold,     -green,     -grey,     -magenta,     -orange,     -pink,     -red,     -violet,     -yellow. Цвет ставится в кавычки. Например, изменим цвет на красный:

t.color('red')

t.forward(d)

Передвинуться вперёд на d пикселей, например, на 50:

t.forward(50)

t.goto(x,y)

Перейти в точку с координатами (x,y), например, (100,15):

t.goto(100, 150)

t.left(angle)

Повернуть налево на угол angle, например, на 90 градусов:

t.left(90)

t.penup()

Поднять перо. Если перо поднято, черепашка не оставляет след при движении:

t.penup()

t.pendown()

Опустить перо. Если перо опущено, черепашка оставляет след при движении:

t.pendown()

t.right(angle)

Повернуть направо на угол angle, например, на 60 градусов:

t.right(60)

t.stamp()

Поставить отпечаток, эта команда без параметров:

t.stamp()

Объяснение:

import turtle

t = turtle.Turtle()

t.shape('turtle')

4,7(6 оценок)
Ответ:
Oles1115
Oles1115
16.06.2021

Объём информации первого письма на 100 бит больше (или в 1,5 больше), чем второго.

Объяснение:

Дано:

K₁ = 50 символов

N₁ = 64 символа

K₂ = 40 символов

N₂ = 32 символа

Найти: | I₁ - I₂ |,  I₁ / I₂

i₁ = log₂N₁ = log₂64 = 6 бит/символов

i₂ = log₂N₂ = log₂32 = 5 бит/символов

I = K * i

I₁ = 50 символов * 6 бит/символ = 300 бит

I₂ = 40 символов * 5 бит/символ = 200 бит

| I₁ - I₂ | = | 300 бит - 200 бит | = 100 бит

I₁ / I₂ = 300 / 200 = 1,5

ответ: объём информации первого письма на 100 бит больше (или в 1,5 больше), чем второго.

4,5(66 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ