Урок информатики «Программирование ветвлений. Логические выражения» 9 класс Учитель информатики МБОУ «Гимназия г. Азнакаево» Губайдуллина Альбина Рафинатовна
Начнем урок с улыбки!
Проверочная работа 1 вариант Какие виды условных операторов вы знаете? В каких случаях в программе используют полный оператор? Нарисовать графическую схему выполнения.
Проверочная работа 1 вариант 2. Определите значение переменной с после выполнения следующего фрагмента программы: a := 30; b := 6; a := a / 2 * b; if a > b then c := a - 3 * b else c := a + 3 * b;
Проверочная работа 1 вариант 3. В написании какого условного оператора допущена синтаксическая ошибка? 1. if <условие> then <действие>; 2. if <условие> then <действие1> else <действие2>; 3. if <условие> then <действие1>; else<действие2>; 4. if <условие1> and <условие2> then <действие>;
Задание1. Имеется фрагмент программы: begin readln(x, y); if x > y then z:= x + y; if x < y then z:= y - x; if x = y then z:= y * x; end. Как можно упростить запись этого фрагмента (уменьшить количество условных операторов)?
Задание 2. Укажите логическое выражение, определяющее полуотрезок (-1;3]. 1. (x<=3) and (x>-1) 2. (x<3) or not (x>-1) 3. (x>=-1) and (x<3)
Задание 3. Записать условие, которое является истинным, когда точка с координатами х попадет в заштрихованные участки координатной прямой.
Задание 4. 1. Загрузите программу Z1. program Z1; var x: real; begin readln(x) ; if x>l then if x>=7 then if x>13 then write('принадлежит') else write('не принадлежит'); end.
Задание 4. 2. Внимательно рассмотрите структуру программы. 3. Запустите программу на выполнение. Всегда ли верно решается поставленная задача? Объясните, почему это происходит. 4. Как нужно изменить программу, для того чтобы ошибок не было. 5. Измените программу и запустите ее вновь.
Задание 4. Доработанная программа: program Z1; var x: real; begin readln(x) ; if (-5<=x) and (x<=1) or (7<=x) and (x<=13) then write('принадлежит') else write('не принадлежит'); end.
Задание 5. Требовалось написать программу, при выполнении которой с клавиатуры считывается координата точки на прямой (х – действительное число) и определяется принадлежность этой точки одному из выделенных отрезков В и D рис.2 (включая границы). Программист торопился и написал программу неправильно. Укажите, как нужно доработать программу, не было случаев её неправильной работы.
var x: real; begin readln(x) ; if x<=l5 then if x<9 then if x<=3 then write('принадлежит') else write('не принадлежит'); end.
Доработанная программа: var x: real; begin readln(x) ; if (-3<=x) and (x<=3) or (9<=x) and (x<=15) then write('принадлежит') else write('не принадлежит'); end.
Задание 6. Какое логическое выражение определяет попадание точки А(х,у) внутрь заштрихованной области на координатной плоскости? (x*x+y*y<=4) and (y>=2*x) (x*x+y*y>=4) and (y>=2*x) (x*x+y*y>=4) and (y>=2*x) and (x>=0) (x*x+y*y<=4) and (y>=2*x) and (x>=0) Напишите программу к данной задаче
Домашнее задание. Составить программу: Даны целочисленные координаты точки на плоскости. Если точка не лежит на координатных осях, то вывести 0. Если точка совпадает с началом координат, то вывести 1. Если точка не совпадает с началом координат, но лежит на оси OX или OY, то вывести соответственно 2 или 3.
Итог урока Что нового вы узнали на сегодняшнем уроке? Для решения каких задач используется условный оператор? Как в условных операторах можно использовать сложные условия, которые строятся из простых отношений? Научились ли вы анализировать работу алгоритма, «прокручивать» его в уме?
Правильно выполнив фрагмент программы, вы узнаете, какую оценку получил класс за работу на уроке: a := 100; b := 30; a := a – b*3; if a > b then c := a – b else c := (b – a)/4;
Спасибо за урок!