Контрольные тренировочные задания
(решения)






Часть 1


Задание 21


Решение примера 2

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

Ответ: ___________________________.

Решение.

Рассмотрим наше задание на примере языка программирования Паскаль.

var a, b, N, t: integer;
Function F(x: integer):integer;
    begin
        F := (x — 16)*(x + 25)
    end;
begin
    a := -100; b := 100;
    N := 0;
    for t := a to b do begin
        if (F(t) <= 0) then
            N := N + 1
    end;
    write(N)
end.

Function F(x: integer):integer — означает:
х — целое число,
результат функции F(t) — целое число.

Данная программа выводит на экран число N, его значение будет зависеть от функции F(t).

Если результат функции F(t) ≤ 0, то N увеличивается на единицу.

Функция F вычисляется по формуле (x — 16)*(x + 25) или x2+9*x-400.

Пусть x2+9*x-400=0, тогда х1 = -25, х2 = 16

Графиком функции x2+9*x-400 является парабола, ветви которой направлены вверх.

Следовательно, при x∈[-25,16] функция ≤ 0

Цикл for запускается для переменной t от -100 до 100, значит, всего 16+1+25=42 раза будет выполняться условие F(t) ≤ 0.

Ответ: 42

Возврат на страницу    Решение примеров части 1 задание 21



Наверх