СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
Информатика
Cайты, меню, вход, новости


Задания
Версия для печати и копирования в MS Word
Задание 21 № 5466

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

 

 

БейсикПаскаль

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

A = -10: B = 31

M = A: R = F(А)

FOR T = A TO B

    IF F(T) > R THEN

        M = T

        R = F(T)

    END IF

NEXT T

PRINT M

    FUNCTION F(x)

        F = 2*(x*x-1)*(x*x-1)+17

    END FUNCTION

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

Function

F(x:integer):integer;

    begin

    F := 2*(x*x-1)*(x*x-1)+17

    end;

begin

    a := -10; b := 31;

    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)

end.

Си++Алгоритмический

#include <iostream>

using namespace std;

int F(int x)

{

    return 2*(x*x-1)*(x*x-1)+17;

}

int main()

{

    int a, b, t, M, R;

    a = -10; b = 31;

    M = a; R = F(a);

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

        if (F(t) > R) {

            M = t; R = F(t);

        }

    }

    cout « M « endl;

}

алг

нач

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

a := -10; b := 31

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

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

    если F(t) > R

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

    все

кц

вывод M

кон

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

нач

    знач:=2*(x*x-1)*(x*x-1)+17

кон

Python

def f(x):

    return 2*(x*x-1)*(x*x-1)+17

a = -10

b = 31

M = a

R = f(a)

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

    if (f(t) > R):

        M = t

        R = f(t);

print(M)

 

Решение.

Алгоритм предназначен для поиска наибольшего t, при котором функция F(t) имеет наибольшее значение на отрезке от a до b. Преобразуем функцию:

 

 

Вычислим производную функции:

 

 

Нули производной: x = 0, x = 1, x = −1. Воспользуемся методом интервалов:

 

 

Поскольку алгоритм осуществляет поиск точки t, в которой F(t) принимает наибольшее значение на отрезке от −10 до 31, то переменная M будет принимать значение 0 или 31. Подставляя в функцию значения 0 и 31, находим, что наибольшее значение функции достигается в точке 31, поэтому переменной M будет присвоено значение 31.

 

Ответ: 31.

Источник: ЕГЭ по информатике 30.05.2013. Основная волна. Сибирь. Вариант 1., ЕГЭ по информатике 30.05.2013. Основная волна. Сибирь. Вариант 2., ЕГЭ по информатике 30.05.2013. Основная волна. Сибирь. Вариант 3.