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

По данному фрагменту кода выясните, какими числами заполняется целочисленный массив а из десяти элементов: а[1]: =10; x: =3; y: =-1; for i: =2 to 10 do begin x: =x+2; y: =y*(-1); а[i]: =а[i-1]-x*y; end; найдите сумму элементов массива с чётными индексами. в ответе укажите только число, без каких-либо знаков препинания, например, 100

👇
Ответ:
aliskylivar
aliskylivar
10.10.2022
Код полностью

var
    a: array[1..10] of integer;
    x, y, i, s: integer;

begin
    a[1] := 10;
    x := 3;
    y := -1;
   
    for i := 2 to 10 do
    begin
        x := x + 2;
        y := y * (-1);
        a[i] := a[i - 1] - x * y;
        write(a[i], ' ');
        if i mod 2 = 0 then s := s + a[i];
    end;
   
    writeln;
    writeln(s);
end.

ответ 5
4,4(83 оценок)
Открыть все ответы
Ответ:
velvis2050
velvis2050
10.10.2022
PascalABC.NET 3.4.0, сборка 1672 от 10.06.2018
Внимание! Если программа не работает, обновите версию!

Самое глупое, что можно было придумать - использовать цикл с предусловием while ... do там, где имеется заданное число повторений:

begin
  var n:=ReadInteger('n=');
  var (s,i):=(0.0,1);
  while i<=n do begin
    s+=1/Sqr(2*i+1);
    i+=1
    end;
  Writeln('S=',s)
end.

Пример
n= 10
S=0.210988884817533

Гораздо естественнее тут выглядит цикл со счетчиком:

begin
  var n:=ReadInteger('n=');
  var s:=0.0;
  for var i:=1 to n do
    s+=1/Sqr(2*i+1);
  Writeln('S=',s)
end.

А если использовать современные возможности программирования в PascalABC.NET, решение вообще в одну строчку:

begin
  Writeln('S=',SeqGen(ReadInteger('n='),t->1/Sqr(2*t+1),1).Sum)
end.
4,5(91 оценок)
Ответ:
Unikorn111
Unikorn111
10.10.2022
PascalABC.NET 3.4.0, сборка 1672 от 10.06.2018
Внимание! Если программа не работает, обновите версию!

Самое глупое, что можно было придумать - использовать цикл с предусловием while ... do там, где имеется заданное число повторений:

begin
  var n:=ReadInteger('n=');
  var (s,i):=(0.0,1);
  while i<=n do begin
    s+=1/Sqr(2*i+1);
    i+=1
    end;
  Writeln('S=',s)
end.

Пример
n= 10
S=0.210988884817533

Гораздо естественнее тут выглядит цикл со счетчиком:

begin
  var n:=ReadInteger('n=');
  var s:=0.0;
  for var i:=1 to n do
    s+=1/Sqr(2*i+1);
  Writeln('S=',s)
end.

А если использовать современные возможности программирования в PascalABC.NET, решение вообще в одну строчку:

begin
  Writeln('S=',SeqGen(ReadInteger('n='),t->1/Sqr(2*t+1),1).Sum)
end.
4,6(67 оценок)
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ