Программа должна вывести 89, то есть N после цикла должна стать равной 89.
Изначально N была равна 5, каждый повтор цикла к N прибавляется 6.
Определим количество повторов цикла (сколько раз к N должна быть прибавлена 6 для получения числа 89):
5+6*x = 89
6*x = 84
x = 14
То есть цикл должен совершить 14 повторов.
Каждый раз к S прибавляется D (которую нужно найти), изначально S = 83. Нам удобнее прибавлять D к нулю, а не к 83, поэтому вычтем из 1200 83 и приравняем S к нулю.
Условие в цикле теперь будет выглядеть как S
Нам нужно наибольшее S, при котором цикл совершает 14 повторов. Чем больше значение D, тем меньше повторов совершит цикл. Найдем наименьшее целое D, при котором цикл совершает 13 повторов, и возьмем предыдущее целое, это и будет наибольшее D, при котором цикл совершит 14 повторов.
Цикл завершается после того, как условие перестанет выполняться, то есть при s > 1117. Составим неравенство:
13*d > 1117
Демонстрационный вариант егэ по информатике 2022, задание 6,при каком наибольшем значении переменной
d > 85,92
То есть наименьшее D, при котором цикл совершит 13 повторов — 86, значит наибольшее D, при котором цикл совершит 14 повторов — 85.
Ответ 85
Источник: megaznanija.com
Презентация на тему Готовимся к ЕГЭ. Задание 8.
Содержание:Общие сведения.Что нужно знать.Разбор задач.Возможные ловушки и проблемы.Задачи для тренировки и самопроверки.
- Главная
- Информатика
- Готовимся к ЕГЭ. Задание 8.
8 Задание ЕГЭ по Информатике
Слайды презентации
Слайд 1 МБУ ДО «Дворец детского творчества»
г. Дзержинск, Нижегородская обл.,
2019 г.
Готовимся к ЕГЭ. Задание 8. Анализ программ
с циклами.
(Си/С++)
Панченко Надежда Петровна,
педагог дополнительного образования
Слайд 2 Содержание:
Общие сведения.
Что нужно знать.
Разбор задач.
Возможные ловушки и проблемы.
Задачи
для тренировки и самопроверки.
Слайд 3 Общие сведения
Сложность: базовая.
Примерное время решения (для тех, кто будет
выполнять часть C : 3 минуты.
Тема: Анализ программы.
Подтема: Построение
алгоритма управления исполнителем.
Что проверяется: Умение построить неветвящийся алгоритм для исполнителя, описанного в условии задачи по заданным входным и выходным данным.
Слайд 4 Что нужно знать:
Как может выглядеть задание? Например, так:
Дан фрагмент программы. Необходимо определить значение переменной (переменных после
Объем задания – до шести итераций цикла (если задание требует «ручной» прокрутки цикла, или большое число итераций с очевидным алгоритмом, две — три операции присваивания внутри цикла.
Слайд 5 Что нужно знать:
основные конструкции языка программирования:
объявление переменных;
оператор присваивания;
оператор
вывода;
циклы(for, while);
уметь:
выполнять ручную прокрутку программы;
выделять переменную цикла, от изменения
которой зависит количество шагов цикла;
определять количество шагов цикла;
определять переменную, которая выводится на экран;
Слайд 6 Что нужно знать:
формулу для вычисления n -ого элемента
арифметической прогрессии:
формулу для вычисления суммы первых членов арифметической прогрессии:
где ai — i –ый элемент последовательности, d – шаг (разность последовательности.
Слайд 7 Разбор задачи 1:
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
int k, s;
s =
0;
k = 0;
while (s
Слайд 8 Решение:
из программы видно, что начальные значения переменных
k и s равны нулю;
цикл заканчивается, когда нарушается условие
s 1024;
для достижения этого значения переменную s нужно 103 раза увеличить на 10, поэтому цикл выполнится 103 раза;
так как k – это счётчик шагов цикла, конечное значение k будет равно 103;
Ответ: 103.
Слайд 9 Разбор задачи 2:
Определите, что будет напечатано в результате
работы следующего фрагмента программы:
int k, s;
k =
5;
s = 2;
while (k
Слайд 10 начальные значения переменных k и s равны соответственно
5 и 2;
цикл заканчивается, когда нарушается условие k
120, то есть количество шагов цикла определяется изменением переменной k;
после окончания цикла выводится значение переменной s;
с каждым шагом цикла значение s увеличивается на k, а затем значение k – на 2, так что к начальному значению s добавляется сумма членов арифметической прогрессии с начальным значением и разностью d = 2;
поскольку начальное значение k равно 5 и с каждым шагом оно увеличивается на 2, переменная k принимает последовательно нечётные значения: 5, 7, 9, …;
цикл заканчивается, когда значение k становится не меньше 120; поскольку k всегда нечётное, конечное значение k равно 121;
Слайд 11 поскольку значение k увеличивается после того, как увеличивается
значение s, значение 121 уже не входит в сумму,
то есть последний элемент последовательности an = 121 – 2 = 119:
количество членов последовательности, которые входят в сумму, можно вычислить: чтобы из 5 получить 119 нужно 57 раз добавить шаг 2, поэтому общее число элементов последовательности равно n = 58 (на один больше;
теперь используем формулу для вычисления суммы членов арифметической прогрессии:
к этой сумме нужно добавить начальное значение переменной s, равное 2: s = 2 + 3596 = 3598
Ответ: 3598.
Источник: findtheslide.com
Циклы — Программирование
Обеспечивает выполнение блока команд, составляющего тело цикла, пока условие остается истинным (выход из цикла — по ложности условия).
Условие проверяется до начала выполнения цикла, поэтому возможна ситуация, что тело цикла не будет выполнено ни разу.
Цикл с постусловием (цикл ДО)
Обеспечивает выполнение команд, составляющих тело цикла, пока условие не станет истинным (цикл выполняется, пока условие ложно).
Условие проверяется после выполнения цикла, поэтому тело цикла всегда выполняется хотя бы один раз.
Цикл с параметром (цикл со счётчиком, цикл ДЛЯ)
Обеспечивает выполнение блока команд, составляющего тело цикла, количество раз, заданное начальным, конечным значениями переменной-счётчика (параметра цикла) и шагом её изменения.
Первоначально переменной-счётчику (в данном примере — переменной i) присваивается начальное значение iH и выполняется тело цикла. После выполнения тела цикла значение счётчика увеличивается на заданную величину шага Δi и выполняется проверка: не превысило ли значение счётчика заданное конечное значение iK. Если не превысило, то вновь выполняется тело цикла. Иначе происходит выход из цикла.
В цикле с параметром количество выполнений тела цикла задано однозначно. В циклах же ПОКА и ДО количество выполнений тела цикла заранее не известно и определяется ситуацией. Поэтому необходимо проследить, чтобы во время выполнения циклов ПОКА и ДО происходило какое-то изменение переменных, задействованных в условии цикла (чтобы в какой-то момент истинность условия изменилась и цикл завершился). Несоблюдение этого требования приводит к бесконечному выполнению цикла (“зацикливанию” программы).
Конструкции циклов в языке Паскаль
Цикл с предусловием:
Цикл с постусловием:
Цикл со счётчиком:
Тело цикла может включать в себя другой цикл. “Глубина вложенности” циклов теоретически может быть любой.
При выполнении вложенных циклов:
• начинает выполняться внешний цикл:
— выполняется тело внешнего цикла, в том числе целиком — внутренний цикл;
• проверяется условие внешнего цикла, если оно соблюдено, снова выполняется внешний цикл:
— выполняется тело внешнего цикла, в том числе целиком — внутренний цикл;
Правила построения вложенных циклов:
• циклы не должны “пересекаться”, т.е. внутренний цикл должен начинаться и полностью завершаться внутри тела внешнего цикла;
• во внутреннем и во внешнем циклах ДЛЯ должны использоваться разные переменные-счётчики.
Операторы досрочного завершения цикла
Оператор языка Паскаль
Оператор продолжения — выполнение данного оператора прекращает текущее выполнение тела цикла и передаёт управление на проверку условия цикла.
Оператор прерывания — выполнение данного оператора прекращает выполнение цикла и передаёт управление на следующий оператор после цикла.
Разбор типовых задач
Задача 1. Определите, что будет напечатано в результате работы следующего фрагмента программы:
Строится таблица трассировки.
Таким образом, выводится значение переменной k, равное 103.
Таблицу трассировки можно записывать упрощённо (подразумевая, что условие s < 1024 не выполняется, а при его первом же выполнении трассировка прекращается):
Задача 2. Запишите число, которое будет напечатано в результате выполнения следующей программы. Для Вашего удобства программа представлена на пяти языках программирования.
Выполним трассировку программы:
Задача 3. Ниже приведена программа. При каком наибольшем введенном числе d после выполнения программы будет напечатано 55?
В предыдущей задаче требовалось определить конечное значение вычисляемой переменной, а теперь наоборот, нужно найти по заданному конечному значению исходное.
1) Анализируем алгоритм:
в цикле ПОКА задано условие выполнения цикла — до тех пор, пока значение s не превышает 365;
внутри цикла значение переменной s увеличивается на заданное значение d, а значение переменной п увеличивается на 5;
по завершении цикла на экран выводится значение переменной n.
2) Тогда, согласно условию, значение n равно 55. Учитывая, что изначально переменная n обнуляется, это означает, что цикл выполнился 55/5 = 11 раз.
3) Учитывая, что переменная s изначально тоже обнуляется, получаем, что за эти 11 проходов цикла переменная s увеличивается на 11 ∙ d и становится больше 365 (условие прекращения работы цикла). Тогда получаем неравенство:
11d > 365, откуда d > 365/11, т.е. d > 33 2 /11 /или, учитывая, что числа — целые, d > 34.
4) Чтобы теперь оценить верхнюю границу интервала возможных значений d, надо учесть, что при слишком большом значении d цикл мог бы прерваться ещё после 10 проходов (а то и раньше). Значит, нам нужно определить значение d, на единицу меньшее, чем минимальное значение d, обеспечивающее выполнение 10 проходов цикла. В этом случае неравенство будет таким:
10d > 365, тогда d > 365/10, или d > 36,5.
5) Рассуждая аналогично п. 3, можно заключить, что минимальное значение d, при котором цикл завершится через 10 проходов, равно 37 (ближайшее целое число, большее 36,5). Нам же требуется значение d, на единицу меньшее. Это число 36.
Таким образом, диапазон возможных значений d, обеспечивающих выполнение 11 проходов цикла, составляет [34..36], а искомое максимальное значение d, при котором будет выведено число 55, равно 36.
Библиотека образовательных материалов для студентов, учителей, учеников и их родителей.
Наш сайт не претендует на авторство размещенных материалов. Мы только конвертируем в удобный формат материалы из сети Интернет, которые находятся в открытом доступе и присланные нашими посетителями.
Если вы являетесь обладателем авторского права на любой размещенный у нас материал и намерены удалить его или получить ссылки на место коммерческого размещения материалов, обратитесь для согласования к администратору сайта.
Разрешается копировать материалы с обязательной гипертекстовой ссылкой на сайт, будьте благодарными мы затратили много усилий чтобы привести информацию в удобный вид.
Источник: compendium.school