Планирование уроков на учебный год (по учебнику Н.Д. Угриновича)



Урок 5
Переменная: тип, имя, значение





§ 1.3. Переменная: тип, имя, значение



Содержание урока

1.3. Переменные: тип, имя, значение

Лабораторная работа № 4. Шаг 2. Задача 1

Лабораторная работа № 4. Шаг 2. Задача 2

Лабораторная работа № 4. Шаг 3. Тест


Лабораторная работа № 4
«Учимся программировать задачи со сложными условиями»


Для дополнительного выполнения

image Шаг 3. Тест

1. (Из материалов ГИА.) Требовалось написать программу, в которой нужно было проверить, лежит ли число x на числовой оси между числами a и b («между» понимается в строгом смысле, т. е. случай x = a или x = b недопустим). Числа x, a, b являются натуральными, и известно, что a отлично от b (но неизвестно: a > b или b > a). Входная информация вводится с клавиатуры, а на выходе должно быть сообщение вида «x между a и b» (если это действительно так), в противном случае никакой выходной информации не выдается.

Программист торопился и написал программу неправильно:

var a, b, x: integer;

p: integer;

begin

readln(a, b, x);

if (a>x) and (x>b) then

writeln ('x между a, b');

end.

Последовательно выполните три задания.

1) Приведите пример таких чисел a, b, x, при которых программа неверно решает поставленную задачу. _________

2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому укажите любой способ доработки исходной программы.)

Доработанная программа:


3) Укажите, как можно доработать программу, соблюдая дополнительное условие: доработанная программа не должна использовать логических операций and и or.

Доработанная программа без логических операций:


2. (Из материалов ГИА.) Требовалось написать программу, при выполнении которой с клавиатуры считывается координата точки на прямой (x – действительное число) и определяется принадлежность этой точки одному из выделенных отрезков В или D (включая границы):

image

Программист торопился и написал программу неправильно:

begin

readln(x);

if x>=-3 then

if x<=9 then

if x>1 then

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

else

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

end.

Последовательно выполните два задания:

1) Заполните таблицу, которая показывает, как работает программа при аргументах, принадлежащих различным областям (A, B, C, D и E). Границы (точки –3, 1, 5 и 9) принадлежат заштрихованным областям (B и D соответственно).

image

В столбцах условий укажите «Да», если условие выполняется; «Нет», если условие не выполняется; «—» (прочерк), если условие не будет проверяться; «не изв.», если программа ведет себя по-разному для разных значений, принадлежащих данной области.

В столбце «Программа выведет» укажите, что программа выведет на экран. Если программа ничего не выводит, введите «—» (прочерк). Если для разных значений, принадлежащих области, будут выведены разные тексты, напишите «не изв.».

В последнем столбце укажите «Да» или «Нет».

2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, достаточно указать любой способ доработки исходной программы.)

Доработанная программа:


3. (Из материалов ГИА.) Требовалось написать программу, при выполнении которой с клавиатуры считываются координаты точки на плоскости (x, y – действительные числа) и определяется принадлежность этой точки заданной закрашенной области (включая границы):

image

Программист торопился и написал программу неправильно:

var x, y: real;

begin

readln(x, y);

if x*x+y*y>=4 then

if x>=–2 then

if y<=–x then

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

else

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

end.

Последовательно выполните два задания:

1) Приведите пример таких чисел x, y, при которых программа неверно решает поставленную задачу. _________

2) Укажите, как нужно доработать программу, чтобы не было случаев ее неправильной работы. (Это можно сделать несколькими способами, поэтому укажите любой способ доработки исходной программы.)

Доработанная программа:


Выводы


Логические операции в языках программирования удобно использовать для:

__________________________

___________________________

___________________________

___________________________

___________________________

В каких случаях, по вашему мнению, удобнее обойтись без логических операций?

__________________________

___________________________

___________________________

___________________________

___________________________

Cкачать материалы урока
image







Наверх