Рабочие листы
к вашим урокам
Скачать
1 слайд
Характеристика задания повышенного уровня сложности С1
Задание С1 нацелено на проверку умения читать короткую простую программу на алгоритмическом языке (языке программирования) и умение искать и исправлять ошибки в небольшом фрагменте программы.
Вам предлагается некоторая задача и вариант её решения, в котором (сознательно) допущена ошибка. Требуется найти эту ошибку и указать, как нужно изменить программу, чтобы она верно решала поставленную задачу.
Обратите внимание – в задании требуется найти смысловую, а не синтаксическую ошибку.
2 слайд
Задача . Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x,y –действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы). Область ограничена гиперболой xy = 1 и прямыми x = 2 и y = 2. Программист торопился и написал программу неправильно.
var x,y: real;
begin
readln(x,у);
if x*y>=1 then
if x<=2 then
if y<=2 then
write('принадлежит')
else
write('не принадлежит')
end.
Последовательно выполните следующее:
Приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу.
Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы).
3 слайд
Рассмотрим примеры
В данной задаче закрашенную область ограничивают три прямые линии: горизонтальная (ось ox ), вертикальная(ось oy ), наклонная(y=1/2х-1)
Получаем условие:
(x>=0) and (y<=0) and (y>=0.5*x-1)
4 слайд
(y<=2-x*x) and (y>=0)
а)
б)
(y>=x*x-2) and (y<=0)
5 слайд
x*x+y*y<=1
(x*x+y*y<=1) and (x>=0)
(x*x+y*y<=1) and (x>=0)
and (y<=0)
(x*x+y*y>=4) and (x<=2)
and (y>=0) and (y<=x)
в)
г)
д)
е)
6 слайд
ж)
з)
и)
к)
(x*x+y*y>=4) and (x>=-2)
and (y>=0) and (y<=-x)
(x*x+y*y>=4) and (x>=-2)
and (x<=0) and (y>=0) and (y<=2)
(x*y>=1) and (x>=-2) and (x<0) and (y>=-2) and (y<0)
(x*y<=-1) and (x>=-2) and
(x<0) and (y>0) and (y<=2)
7 слайд
(x*x+y*y<=1) and ((y>=x) or (x<=0))
Использование оператора or («ИЛИ»)
8 слайд
а)
б)
в)
г)
(x*x+y*y<=1) and
((y>=-x) or (y<=x))
(y<=2-x*x) and
((y>=x) or (y>=0))
(y>=x*x-2) and
((y<=x) or (y<=-x))
(x*x+y*y<=1) and
((x<=0) or (y>=0))
9 слайд
д)
(x*x+y*y<=1) and
((x>=0) or (y>=0))
10 слайд
Периодические функции
(y>=0) and (y<=0.5) and (y<=sin(x)) and (x>=0) and (x<=pi)
а)
б)
(x>=-pi/2) and (y>=-1) and (y>=x-1) and (y<=sin(x))
11 слайд
в)
г)
(y>=0) and (y<=1) and (x>=0) and
(x<=3.14) and ((y<=sin(x))or (x>=1.57))
(y>=0) and (y<=1) and (x>=0) and (x<=3.14) and ((y<=sin(x))or (x<=1.57))
12 слайд
Задача 1. Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x,y –действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы). Область ограничена гиперболой xy = 1 и прямыми x = 2 и y = 2. Программист торопился и написал программу неправильно.
var x,y: real;
begin
readln(x,у);
if x*y>=1 then
if x<=2 then
if y<=2 then
write('принадлежит')
else
write('не принадлежит')
end.
Последовательно выполните следующее:
Приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу.
Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы).
13 слайд
Решение:
x=0, y=0 (Любая пара (x,y), для которой выполняется: xy<1 или x>2 или (xy≥1 и x<0 и y<0)
2) Возможная доработка :
var x,y: real;
begin
readln(x,у);
if (x*y>=1) and (x>0) and (x<=2) and (y>0) and (y<=2)
then
write('принадлежит')
else
write('не принадлежит')
end.
14 слайд
Задача 2.
var x,y: real;
begin
readln(x,у);
if x*y<=-1 then
if x<=2 then
if y>=-2 then
write('принадлежит')
else
write('не принадлежит')
end.
Последовательно выполните следующее:
1) Приведите пример таких чисел x, y, при которых программа неверно
решает поставленную задачу.
2) Укажите, как нужно доработать программу, чтобы не было случаев ее
неправильной работы. (Это можно сделать несколькими способами,
достаточно указать любой способ доработки исходной программы).
15 слайд
Решение:
x=0, y=0
(Любая пара (x,y), для которой выполняется: xy>-1 или x>2 или (xy≤-1 и x<0 и y>0)
2) Возможная доработка :
var x,y: real;
begin
readln(x,у);
if (x*y<= -1) and (x>0) and (x<=2) and (y>= -2) and (y<0)
then
write('принадлежит')
else
write('не принадлежит')
end.
Рабочие листы
к вашим урокам
Скачать
6 626 987 материалов в базе
Настоящий материал опубликован пользователем Жерноклёва Валентина Ивановна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт
Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.
Удалить материалВаша скидка на курсы
40%Курс профессиональной переподготовки
300/600 ч.
Курс повышения квалификации
72/180 ч.
Курс профессиональной переподготовки
600 ч.
Мини-курс
5 ч.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.