СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

27.2.Ещё пример задания

Категория: Информатика

Нажмите, чтобы узнать подробности

Для подготовки к ОГЭ И ЕГЭ  по информатике

Просмотр содержимого документа
«27.2.Ещё пример задания»

Ещё пример задания:

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

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

Function F(x:integer):integer;

begin

F:=(x*x-4)*(x*x-4)+6;

end;

BEGIN

a:=-10; b:=10;

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

for t:=a to b do begin

if (F(t)

M:=t;

R:=F(t);

end;

end;

write(M+6);

END.

Решение:

  1. заметим, что в программе есть цикл, в котором переменная t принимает последовательно все целые значения в интервале от a до b:

for t:=a to b do begin

...

end;

  1. до начала цикла в переменную M записывается значение a, а в переменную R – значение функции в точке a:

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

  1. внутри цикла есть условный оператор, в котором вычисляется значение функции F(t) и сравнивается со значением переменной R:

if (F(t)

M:=t;

R:=F(t);

end;

если новое значение функции меньше, чем значение R, в R записывается значение функции в точке t, а в переменной M запоминается само значение t (аргумент функции, соответствующий значению в R)

  1. в результате анализа пп. 1-3 можно сделать вывод, что цикл ищет минимум функции F(t) на интервале от a до b, и после выполнения цикла в переменной M оказывается значение аргумента t, при котором функция достигает минимума на заданном интервале (здесь это интервал [-10, 10])

  2. функция, которая используется в программе, – это квадратичная парабола: , её ветви направлены вверх (коэффициент при положительный, равен 1); она имеет два минимума в точках и

  1. обе точки минимума находятся на отрезке [-10;10], поэтому программа найдёт одну из этих точек; вопрос: какую именно?

  2. для квадратичной параболы обе точки минимума имеют одинаковую -координату, а запоминание новой точки минимума происходит только тогда, когда только что вычисленное значение F(t) станет строго меньше, чем хранящееся в переменной R:

if (F(t) R)then begin

M:=t;

R:=F(t);

end;

  1. поэтому в точке второго минимума никаких изменений не произойдет, и в переменной M останется значение «–2»; таким образом, будет найдет первый минимум

  2. обратим внимание, что на экран выводится не M, а M+6, поэтому результат будет равен

(-2)+6=4

  1. Ответ: 4.