Линейные алгоритмы в ОГЭ

01.04.2022 1 Автор : Марина Николаевна
Линейные алгоритмы в ОГЭ

Линейные алгоритмы в ОГЭ. В этом задании необходимо провести анализ линейного алгоритма для формального исполнителя.

Сразу переходим к практике от простого к сложному

Задание 1. Линейные алгоритмы

линейные алгоритмы

Исходное число – число 3;    команды  — 11211; результат —  88.

Все, что нам нужно – последовательно расписать данные команды и получить одно уравнение.

У нас было число 3

В первую очередь прибавляем 5

Затем повторяем первую команду – прибавь 5

Затем в нашей последовательности идет команда под номером 2 – умножь на b, что означает, что все, что мы до этого получили, необходимо умножить на b.

Затем еще раз делаем команду – прибавь 5;

Последнее действие – прибавь 5.

В результате все полученное выражение приравниваем к 88, так как в задании оно является результатом всех действий.

Получаем:

(3+5+5)* b +5 +5 = 88

13 b + 10 = 88

13 b = 78

b = 78/13 = 6

Ответ: 6

Задание 2. Линейный алгоритм

Теперь рассмотрим следующий вид задания с небольшим усложнением.

В условии задачи практически все тоже самое, тот же принцип, но в предыдущей задаче было умножение, а в следующей будет деление.

Первоначально было число 30.

Расписываем нашу программу:  11121.

Сначала к 30 прибавить нало 3.

Затем ещё раз прибавить 3.

Затем еще раз повторяем первую команду –прибавь 3.

После этого уже идет команда – раздели на b. В нашем случае мы всё, полученное ранее авыражение делим на b.

Заканчиваем алгоритм первой командой – прибавить 3.

Полученное выражение приравниваем к 6 по условию задания.

Получили:

((30+3+3+3)/ b)+3 = 6

Снова уравнение и его мы решаем.

39/ b = 6-3

39/ b=3

b =39/3

b=13

Ответ: 13

Второе задание решено.

Далее может среди таких типовых задач встретится команда – возведи в квадрат. Это значит, что получится при решении задания не линейное уравнение, а квадратное уравнение.

Задание 3. Линейные алгоритмы.

Сначала последовательно выполняем команды:

22+b – затем опять выполняем команду 1 и возводим все, полученное выражение в квадрат. После этого выполняем дважды команду 2.

Получаем по алгоритму:

(22+b)2 +b+b = 72

Раскрываем скобочки по правилу:

(a+b)2 = a2+2ab + b2

16+8b+b2+2b = 72

Формируем квадратное уравнение: b2+10b-56 = 0

Решаем квадратное уравнение через дискриминант.

Находим дискриминант

D = 100+224 = 324 = 182

X1 = (-10+18)/2 = 4

X2 = (-10-18)/2 = -14

Отрицательное число не может стать решением нашей задачи, поэтому берем в качестве ответа Х1

   Х1 = 4                             

Ответ: 4.

Задание 4. Линейные алгоритмы

Следующее задание отличается от предыдущих.

линейные алгоритмы

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

Сначала у нас идет 76. Значит, что уже с первой команды мы можем применить команду «делить на 2».

линейные алгоритмы

Рассуждаем дальше, 38 можно разделить на 2? Да, можно. Значит опять применяем первую команду:

линейные алгоритмы

Уже 19 не получится разделить на 2, т.к. нацело число 19 не делится. Отсюда следует, что необходимо применить вторую команду «вычти 3».

Далее опять можно разделить на 2, значит, полученное ранее число 16 делим на 2 и получаем число 8: 16/2 = 8.

Следующей командой нам предстоит выбрать вторую, т.к. если преминить к числу 8 команду «разделить на 2», то получим 4, а это уже меньше необходимого значения, заявленного задачей. По результатам расчетов по алгоритму необходимо получить число 5.

Следовательно, из 5 вычитаем 3, т.е. применяем вторую команду «вычесть 3»

Полностью действия выглядят таким образом:

Применили для решения задач 5 команд, что также не противоречит условиям.

Ответом будет номера команд, примененных для решения задачи:

Ответ: 11212

Но в этом подтипе заданий может быть и несколько другое задание.

Задание 5. Линейные алгоритмы

Линейные алгоритмы

Конечно, методом проб и ошибок можно подобрать команды, чтобы перевести число 3 в число 84. Но это займет чуть больше времени.

Поэтому в задании, когда нужно составить алгоритм и из меньшего числа получить большее,  нужно делать наоборот: из большего получать меньшее.

У нас есть результат операции – 84.

Из 84 будем идти к 3.

Раз движемся в обратную сторону, то и команды меняются на противоположные. Было «прибавь 1», стало «минус 1». Было «возведи в квадрат», стало «извлеки корень квадратный».

Начинаем с числа 84. В связи с тем, что мы не можем к 84 применить команду «извлечь корень квадратный», то однзначно делаем команду первую «отнеми единицу».

И после каждого действия проверяем, сможем ли мы выполнить вторую команду.

линейные алгоритмы

Из 83  нельзя извлечь корень квадратный, тогда опять отнимаем 1. Получаем 82. Опять не можем извлечь корень квадратный и повторяем первую команду. Получаем 81. Вот из этого числа мы можем извлечь корень, извлекаем и получаем 9, опять сравниваем с результатом. В результате мы должны получить 3. Поэтому опять извлекаем корень квадратный из 9 и получаем 3.

Результат достигнут, при этом выполненно 5 команд.

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

Получилось: 11122 – переворачиваем и получаем ответ: 22111

Ответ: 22111

 

Тема занятия «Решение задач на компьютере» по ссылке.