Задание EGEINF8B8A99: Выполнение и анализ программы

ФИПИ · ЕГЭ · все форматы ответа · 2475 заданий

Открыть решение ↓ Ошибка или пожелание

Тип задачи: Выполнение и анализ программы.

Учебные темы: Определение возможных результатов работы простейших алгоритмов управления исполнителями и вычислительных алгоритмов. Определение исходных данных, при которых алгоритм может дать требуемый результат.

Впишите правильный ответ.

Определите число, которое будет напечатано в результате выполнения следующего алгоритма. Для Вашего удобства алгоритм представлен на пяти языках программирования.

Примечание. Функции abs и iabs возвращают абсолютное значение своего входного параметра.

Бейсик

DIM A, B, T, M, R AS LONG

A = -20: B = 20
M = A: R = F(A)

FOR T = A TO B

  IF F(T) <= R THEN

    M = T

    R = F(T)

  END IF

NEXT T

PRINT M + R

 

FUNCTION F(x)

 F = abs(abs(x - 2) + abs(x + 5) - 9) + 1

END FUNCTION

Python

def F(x):

  return abs(abs(x - 2) + abs(x + 5) - 9) + 1

 

a = -20

b = 20

M = a

R = F(a)

for t in range(a, b + 1):

  if (F(t) <= R):

    M = t

    R = F(t)

print (M + R)

Алгоритмический язык

алг

нач

цел a, b, t, M, R

  a := -20; b := 20

  M := a; R := F(a)

  нц для t от a до b

    если F(t) <=  R то

        M := t; R := F(t)

    все

  кц

  вывод M + R

кон

алг цел F(цел x)

нач

 знач := iabs(iabs(x - 2) + iabs(x + 5) - 9) + 1

кон

Паскаль

var a, b, t, M, R : longint;

function F(x: longint) : longint;

begin

  F := abs(abs(x - 2) + abs(x + 5) - 9) + 1;

end;

 

begin

  a := -20; b := 20;

  M := a; R := F(a);

  for t := a to b do begin

    if (F(t) <= R) then begin

      M := t;

      R := F(t)

    end

  end;

  write(M + R)

end.

С++

#include <iostream>

using namespace std;

 

long F(long x) {

    return abs(abs(x - 2) + abs(x + 5) - 9) + 1;

}

 

int main() {

    long a = -20, b = 20, M = a, R = F(a);

    for (int t = a; t <= b; ++t) {

        if (F(t) <= R) {

            M = t; R = F(t);

        }

    }

    cout << M + R;

    return 0;

}

 



i
СВОЙСТВА ЗАДАНИЯ
КЭС:
3.2 Оценка сложности вычислений. Время работы и объём используемой памяти, их зависимость от размера исходных данных. Оценка асимптотической сложности алгоритмов. Алгоритмы полиномиальной сложности. Переборные алгоритмы. Примеры различных алгоритмов решения одной задачи, которые имеют различную сложность
3.6 Язык программирования (Паскаль, Python, Java, C++, C#). Типы данных: целочисленные, вещественные, символьные, логические. Ветвления. Сложные условия. Циклы с условием. Циклы по переменной. Обработка данных, хранящихся в файлах. Текстовые и двоичные файлы. Файловые переменные (файловые указатели). Чтение из файла. Запись в файл. Разбиение задачи на подзадачи. Подпрограммы (процедуры и функции). Использование стандартной библиотеки языка программирования
Тип ответа:Краткий ответ
Номер: 8B8A99
НЕ РЕШЕНО Ответить

Решение задания EGEINF8B8A99

Ответ: 4

Перебираются все целые t от -20 до 20 включительно. Функция имеет вид F(x) = (|((|(x − 2)| + |(x + 5)|) − 9)| + 1).
Модуль неотрицателен, поэтому F(x) ≥ 1. Равенство возможно, когда |x − 2| + |x + 5| = 9.
На отрезке [−5; 2] эта сумма равна 7, что меньше 9. Слева от отрезка сумма равна −2x + -3, справа — 2x + 3.
Решая два линейных уравнения, получаем x = -6 и x = 3. Оба целые и лежат в диапазоне перебора. Минимум R = 1.
Условие обновления F(t) ≤ R допускает равенство. При движении t по возрастанию M поэтому запоминает последний, то есть наибольший аргумент минимума: M = 3.
Выводится M + R = 3 + 1 = 4.
Проверка: подстановка обоих аргументов обнуляет внешний модуль; меньшего F быть не может, а после правого аргумента модуль снова положителен.
Численная проверка правой и левой соседних точек выбранного минимума: F(2) = 3, F(3) = 1, F(4) = 3.
В ответ требуется значение выражения в команде вывода, поэтому найденный аргумент M отдельно ещё не является окончательным ответом.
Ответ: 4.

Помочь улучшить сайт

Напишите пожелание к сайту или решению либо сообщите о найденной неточности в задании EGEINF8B8A99.

Сообщение увидит только команда сайта: на странице оно не публикуется.

Комментарии к решению

Комментарии видны всем посетителям сайта.

Комментариев пока нет. Будьте первым.

Чтобы оставить комментарий, войдите или зарегистрируйтесь.