Меню
Разработки
Разработки  /  Информатика  /  Презентации  /  Решение задач C1 части С ЕГЭ

Решение задач C1 части С ЕГЭ

В презентации подробно рассмотрены решения двух задач C1 части С ЕГЭ.
31.03.2012

Описание разработки

В презентации подробно рассмотрены решения двух задач C1 части C ЕГЭ. Презентация может быть использована при подготовке выпускников к ЕГЭ, а также при повторении и закреплении тем "Алгоритмизация", "Условные алгоритмы", "Полное ветвление", "Сложные условия".

Решение задач C1 части С ЕГЭ

Содержимое разработки

Решение задач С1 части С  Единого государственного экзамена Автор – Богачёва Г.В. Учитель информатики Лицей 144 Санкт-Петербурга

Решение задач С1 части С Единого государственного экзамена

Автор – Богачёва Г.В.

Учитель информатики

Лицей 144 Санкт-Петербурга

Для решения задач С1 необходимо : Проанализировать геометрический чертёж, выделив условия, ограничивающие заштрихованную область (причём в задаче 2010 года, а также в демоверсии 2011 года условие задачи значительно усложнилось с математической точки зрения) Выяснить, как связаны между собой эти условия (если областей несколько, определить, в каких отношениях находятся фигуры – разбиение, объединение, исключение и т.д), другими словами, составить сложное условие, описывающее выделенную область.

Для решения задач С1 необходимо :

  • Проанализировать геометрический чертёж, выделив условия, ограничивающие заштрихованную область (причём в задаче 2010 года, а также в демоверсии 2011 года условие задачи значительно усложнилось с математической точки зрения)
  • Выяснить, как связаны между собой эти условия (если областей несколько, определить, в каких отношениях находятся фигуры – разбиение, объединение, исключение и т.д), другими словами, составить сложное условие, описывающее выделенную область.
Для решения задач С1 необходимо : Проанализировать данную в условии программу, выявив ошибки: недостаток условий и ошибку в алгоритме, связанную с использованием вложенных условных операторов. Чётко ответить на вопросы задачи: указать координаты точки, для которой программа не выводит «не принадлежит». Предложить метод доработки, лучше с использованием сложных условий, это исключит ошибки при написании вложенных условных операторов.

Для решения задач С1 необходимо :

  • Проанализировать данную в условии программу, выявив ошибки: недостаток условий и ошибку в алгоритме, связанную с использованием вложенных условных операторов.
  • Чётко ответить на вопросы задачи: указать координаты точки, для которой программа не выводит «не принадлежит». Предложить метод доработки, лучше с использованием сложных условий, это исключит ошибки при написании вложенных условных операторов.
Для решения задач С1 необходимо : При решении задач этого типа основные методы –анализ и синтез. При подготовке к решению задач последовательно изучаются следующие темы: правила построения программы на изучаемом языке, правила работы с переменными, полная и неполная формы ветвления, использование операторных скобок begin end в операторах ветвления, составление сложных условий с помощью логических операций и, наконец, использование вложенных условных операторов. Весь материал по этой теме блестяще изложен у К.Ю. Полякова, презентациями и сайтом которого я регулярно пользуюсь.

Для решения задач С1 необходимо :

При решении задач этого типа основные методы –анализ и синтез.

При подготовке к решению задач последовательно изучаются следующие темы: правила построения программы на изучаемом языке, правила работы с переменными, полная и неполная формы ветвления, использование операторных скобок begin end в операторах ветвления, составление сложных условий с помощью логических операций и, наконец, использование вложенных условных операторов. Весь материал по этой теме блестяще изложен у К.Ю. Полякова, презентациями и сайтом которого я регулярно пользуюсь.

Условие задачи 1:

Условие задачи 1:

Решение задачи 1: не обращая внимание на программу, анализируем чертёж, выявив условия, которым отвечают координаты точек заштрихованной области. заштрихованная область находится справа от оси абцисс, что равносильно первому условию (с учетом границы здесь и далее получаем нестрогие неравенства) справа от оси абцисс, что равносильно первому условию (с учетом границы здесь и далее получаем нестрогие неравенства) слева от линии 1,5, поэтому получаем второе условие слева от линии 1,5, поэтому получаем второе условие

Решение задачи 1:

  • не обращая внимание на программу, анализируем чертёж, выявив условия, которым отвечают координаты точек заштрихованной области.
  • заштрихованная область находится
  • справа от оси абцисс, что равносильно первому условию (с учетом границы здесь и далее получаем нестрогие неравенства)
  • справа от оси абцисс, что равносильно первому условию (с учетом границы здесь и далее получаем нестрогие неравенства)
  • слева от линии 1,5, поэтому получаем второе условие
  • слева от линии 1,5, поэтому получаем второе условие
Решение задачи 1: заштрихованная область ограничена с двух сторон по координате ординат: она находится ниже линии y третье условие выше линии , что дает четвертое условие  значит, точка находится в заданной области, если все эти четыре условия выполняются одновременно; отсюда следует, что в программе нужно использовать четыре вложенных условных оператора или один условный оператор со сложным условием, в котором четыре простых условия связаны с помощью логической операции and («И», одновременное выполнение всех условий)

Решение задачи 1:

  • заштрихованная область ограничена с двух сторон по координате ординат: она находится
  • ниже линии y третье условие
  • выше линии , что дает четвертое условие

  • значит, точка находится в заданной области, если все эти четыре условия выполняются одновременно; отсюда следует, что в программе нужно использовать четыре вложенных условных оператора или один условный оператор со сложным условием, в котором четыре простых условия связаны с помощью логической операции and («И», одновременное выполнение всех условий)
Решение задачи 1: анализируем программу: здесь только три вложенных условных оператора с простыми отношениями, поэтому какое-то условие не учтено; определяем, что не учтено условие оператор write('принадлежит') помещен внутрь всех трех условных операторов, то есть, он выполнится тогда, когда только три условия истинны; отметим на рисунке область, где выполняются все нужные условия, кроме (красная зона);

Решение задачи 1:

  • анализируем программу: здесь только три вложенных условных оператора с простыми отношениями, поэтому какое-то условие не учтено; определяем, что не учтено условие
  • оператор write('принадлежит') помещен внутрь всех трех условных операторов, то есть, он выполнится тогда, когда только три условия истинны;
  • отметим на рисунке область, где выполняются все нужные условия, кроме (красная зона);
= 0 then write('принадлежит') else write('не принадлежит')   x = -2, y = 1 " width="640"

Решение задачи 1:

  • для всех точек, которые находятся в «красной» зоне программа выдаст сообщение «принадлежит», хотя в самом деле эти точки не принадлежит заданной области; одна из таких точек имеет координаты
  • теперь выясним, когда программа выдает сообщение «не принадлежит»

if y

if x

if y = 0 then

write('принадлежит')

else write('не принадлежит')

 

x = -2, y = 1

= 0 then write('принадлежит') else write('не принадлежит')   " width="640"

Решение задачи 1:

  • можно подумать, else относится к самому первому оператору if , однако в самом деле это не так; перед словом else нет end , поэтому ищем ближайший if : это самый внутренний оператор, правильная запись «лесенкой» выглядит так:

if y

if x

if y = 0 then

write('принадлежит')

else write('не принадлежит')

 

= 0 не принадлежит принадлежит " width="640"

Решение задачи 1:

  • этот фрагмент программы соответствует блок-схеме, которая показана на рисунке:

да

нет

y x*x

да

нет

x

нет

да

y = 0

не принадлежит

принадлежит

Решение задачи 1: по схеме видим, что при (первое условие ложно), а также при (второе условие ложно) программа вообще не выдает никакого сообщения, то есть, работает неправильно; таким образом, координаты любой точки, для которой или , могут быть указаны в ответе как пример набора входных данных, при которых программа работает неправильно x=2, y=6 итак, первая часть ответа  примеры входных данных, на которых программа работает неверно:  (x= -2, y= 1) (неправильно определяет принадлежность точки области)  (x=2, y=6) или (x= 5, y=0) (не выдает вообще никакого сообщения)

Решение задачи 1:

  • по схеме видим, что при (первое условие ложно), а также при (второе условие ложно) программа вообще не выдает никакого сообщения, то есть, работает неправильно; таким образом, координаты любой точки, для которой или , могут быть указаны в ответе как пример набора входных данных, при которых программа работает неправильно x=2, y=6
  • итак, первая часть ответа

примеры входных данных, на которых программа работает неверно: (x= -2, y= 1) (неправильно определяет принадлежность точки области) (x=2, y=6) или (x= 5, y=0) (не выдает вообще никакого сообщения)

= 0 then if y if x if y = 0 then write('принадлежит') else write('не принадлежит') else write('не принадлежит') else write('не принадлежит') else write('не принадлежит'); " width="640"

Решение задачи 1:

  • остается исправить эту программу; 1 способ: добавим в программу четвертый (вложенный) условный оператор, проверяющий условие, и еще три блока else , чтобы выводить строку «не принадлежит» в том случае, когда хотя бы один из них не сработал:

if x = 0 then

if y

if x

if y = 0 then

write('принадлежит')

else write('не принадлежит')

else write('не принадлежит')

else write('не принадлежит')

else write('не принадлежит');

Решение задачи 1: обратите внимание, что точка с запятой есть только после самого последнего оператора write , так как остальные стоят перед ключевым словом else , перед которым точка с запятой не ставится хотя приведенный выше метод дает работоспособную программу, она нерациональна для такой задачи; видно, что оператор write('не принадлежит') повторяется в тексте 4 раза

Решение задачи 1:

  • обратите внимание, что точка с запятой есть только после самого последнего оператора write , так как остальные стоят перед ключевым словом else , перед которым точка с запятой не ставится
  • хотя приведенный выше метод дает работоспособную программу, она нерациональна для такой задачи; видно, что оператор write('не принадлежит') повторяется в тексте 4 раза
= 0) and (y = 0) then write('принадлежит') else write('не принадлежит'); end. здесь использовано сложное условие, в котором 4 отношения связаны операциями and («И», требуется одновременное выполнение всех условий) " width="640"

Решение задачи 1:

  • более элегантное решение формулируется на словах так: «точка принадлежит области, если выполняются одновременно 4 приведенных выше условия, а иначе – не принадлежит»; а вот реализация на Паскале:

var x,y: real;

begin

readln(x,y);

if (x = 0) and (y = 0) then

write('принадлежит')

else write('не принадлежит');

end.

  • здесь использовано сложное условие, в котором 4 отношения связаны операциями and («И», требуется одновременное выполнение всех условий)
Условие задачи 2:

Условие задачи 2:

Решение задачи 2: Изложим решение менее подробно, чем в первой задаче.  Анализируем чертёж, определяем условия: разбиваем заштрихованную область на 2 части прямой x=0:  1 фигура: y  2 фигура: , , y  Объединяем две пересекающиеся области с помощью логической операции дизъюнкции.

Решение задачи 2:

Изложим решение менее подробно, чем в первой задаче.

  • Анализируем чертёж, определяем условия: разбиваем заштрихованную область на 2 части прямой x=0:

1 фигура: y

2 фигура: , , y

  • Объединяем две пересекающиеся области с помощью логической операции дизъюнкции.
Решение задачи 2: Анализируем приведённую в задании программу. Отметим на рисунке область, где выполняются все условия, проверка которых есть в программе, красным цветом. Видно, что точки частей выделенной области, закрашенных синим цветом, в проверяемую область не входят, и, следовательно, программа ошибочно даст «не принадлежит». Координаты одной из таких точек x = 0,5, y = 0,2

Решение задачи 2:

  • Анализируем приведённую в задании программу. Отметим на рисунке область, где выполняются все условия, проверка которых есть в программе, красным цветом. Видно, что точки частей выделенной области, закрашенных синим цветом, в проверяемую область не входят, и, следовательно, программа ошибочно даст «не принадлежит». Координаты одной из таких точек x = 0,5, y = 0,2
Решение задачи 2: Теперь выясним, когда программа выдает сообщение «не принадлежит». Анализируя вложенные условия, видим, что ветвь else относится к внутреннему оператору, соответственно, при y   y

Решение задачи 2:

  • Теперь выясним, когда программа выдает сообщение «не принадлежит». Анализируя вложенные условия, видим, что ветвь else относится к внутреннему оператору, соответственно, при y

y

=0) or (x= x) and (y write('принадлежит') else write('не принадлежит'); end. " width="640"

Решение задачи 2:

  • Первая часть ответа такова: примеры входных данных, на которых программа работает неверно: ( x = 0,5, y = 0,2 ) (неправильно определяет принадлежность точки области) ( x=1, y= -3 ) (не выдает вообще никакого сообщения)
  • Приведём наиболее рациональную форму доработки программы, использование которой исключает ошибки при написании вложенных условных операторов:

var x,y: real;

begin

readln(x,y);

if (y = 0) and (x=0) or (x= x) and (y

write('принадлежит')

else write('не принадлежит');

end.

Источники:  http://kpolyakov/narod.ru (сайт К.Ю. Полякова) Условия задач взяты из экзаменационных материалов прошлых лет.

Источники:

  • http://kpolyakov/narod.ru (сайт К.Ю. Полякова)
  • Условия задач взяты из экзаменационных материалов прошлых лет.
-75%
Курсы дополнительного образования

Основы HTML

Продолжительность 72 часа
Документ: Cвидетельство о прохождении курса
4000 руб.
1000 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Решение задач C1 части С ЕГЭ (1.86 MB)

Комментарии 3

Чтобы добавить комментарий зарегистрируйтесь или на сайт

Валентина, 02.04.2012 11:44
СПАСИБО!
Екатерина, 02.04.2012 10:53
огромное спасибо!
Владимир, 01.04.2012 15:41
Спасибо

© 2008-2024, ООО «Мультиурок», ИНН 6732109381, ОГРН 1156733012732

Учителю!
Огромная база учебных материалов на каждый урок с возможностью удаленного управления
Тесты, видеоуроки, электронные тетради