Тема : Условный оператор IF. Оператор выбора CASE. Программирование разветвляющихся структур. ? Учебные и воспитательные цели: 1.Сформировать устойчивые.

Презентация:



Advertisements
Похожие презентации
Составные условия в разветвляющихся алгоритмах © М.Е.Макарова
Advertisements

Организация программ разветвляющейся структуры. Условный оператор.
Операторы языка Паскаль Условные операторы. Оператор условия ЕСЛИ (if) Оператор условия ВЫБОР (case) Условные операторы предназначены для выбора к исполнению.
1 Организация программ разветвляющейся структуры. Организация программ разветвляющейся структуры. Условный оператор.
Условный оператор Структура ветвления. Условный оператор реализует выполнение определённых команд при условии, что некоторое логическое выражение (условие)
1 Программирование на языке Паскаль Тема 2. Ветвления.
1 Программирование на языке Паскаль Ветвления. 2 Разветвляющиеся алгоритмы Задача. Ввести два целых числа и вывести на экран наибольшее из них. Идея решения:
1 Организация программ разветвляющейся структуры. Условный оператор.
Использование составных логических выражений в условном операторе Паскаля.
Оператор множественного выбора CASE. Составить программу, которая спрашивает у пользователя номер месяца и выводит соответствующее названия времени года.
Условия такого типа называют логическими выражениями.
Использование составных логических выражений в условном операторе Паскаля.
Шутилина Л.А. В жизни часто приходится принимать решения в зависимости от сложившейся ситуации, когда нужно сделать тот или иной.
Тема урока : Оператор множественного выбора CASE.
«Программирование разветвляющихся алгоритмов» Учитель информатики гимназии 12 г. Тюмени Бугаева Елена Викторовна.
1 Программирование на языке Паскаль Тема 3. Сложные условия © К.Ю. Поляков,
Pascal Алгоритмы разветвляющейся структуры, программирование на языке Pascal 10 «А» класс.
Презентация на тему: «Программирование Разветвляющихся структур». Составила: учитель информатики Чура Н.А. 1.
ТЕМА: «ПРОВЕРКА УСЛОВИЯ» 8 – 9 класс Логунова Наталия Борисовна учитель информатики и ИКТ высшей категории МОСКВА, 2012.
Урок по теме: «Условный оператор» Автор: Алексеева Е.В., Учитель информатики и ИКТ МОУ «Сланцевская СОШ 3» 2/1/2014.
Транксрипт:

Тема : Условный оператор IF. Оператор выбора CASE. Программирование разветвляющихся структур. ? Учебные и воспитательные цели: 1. Сформировать устойчивые навыки при написании программ с использованием условного оператора IF, оператора выбора CASE. 2. Получить необходимые знания и навыки при программировании разветвляющихся структур. 3. Воспитывать у обучающихся чувство ответственности за свою профессиональную подготовку.

Учебные вопросы: 1. Условный оператор IF. 2. Логические выражения и отношения 3. Сравнивание текстовых величин 4. Опреатор выбора CASE

Разветвляющийся алгоритм - алгоритм, в котором в зависимости от выполнения или не выполнения некоторого условия совершается либо одна, либо другая последовательность действий. Определение Для чего используются разветвляющиеся алгоритмы? Для принятия решений в зависимости от каких-либо условий.

Первый учебный вопрос: Условный оператор IF полная форма ветвления неполная форма ветвления Оператор команды ветвления IF

Условный оператор if: полная форма ветвления Условие верно? … да нет Команда 1 Команда 2 … if условие then команда 1 else команда 2; Полное ветвление – если есть описание действий при выполнении условия (команда 1) и при невыполнении условия (команда 2) Пример: if A< B then X:=A else X:=B; Обратить внимание, что перед словом else точка с запятой не ставится.

Составить программу, которая выводит на экран компьютера пример на умножение двух однозначных чисел, запрашивает ответ пользователя, проверяет его и выводит сообщение «Правильно» или «Вы ошиблись» и правильный результат. Пример 1 Program Pr1; Uses Crt; Var m1, m2, p, otv: integer; Begin Randomize; M1:=random(9)+1; M2:=random(9)+1; P:=m1*m2; Writeln (Сколько будет, m1, x, m2, ?); Writeln (Введите ответ и нажмите ) Readln (otv); If otv=p Then Writeln (Правильно); Else Writeln (Вы ошиблись, m1, x, m2, =, p); Readln; End.

Условный оператор: неполная форма ветвления Условие верно? … да Команда 1 … if условие then команда 1; Неполное ветвление – если есть описание действий при выполнении условия (команда 1) и нет описания действий при невыполнении условия Пример: if A< B then A:=A*B;

Пример 2 Составьте программу, удваивающую значение целой переменной а, если а>5. Program Pr2; Var а : Integer; Begin WriteLn (Введите число); ReadLn (а); If а >5 Then а := а*2; WriteLn (а =', а); End. запиши в тетрадь

Использование нескольких команд после слов Then и Else В записи есть ошибки!!! Составной оператор!!!

Способы ветвления алгоритма на несколько рукавов

Один из способов реализации ветвления на несколько рукавов – использование вложенных операторов IF

Программа для нашего примера примет вид: Program Pr4; Var a,x: integer; Begin Writeln('Введите x'); Read (x); If x<0 then a:=x+1 Else If x<10 Then a := 2*x Else a := 0; Writeln (a); End. Рассмотрим этот способ на примере:

Пример 5 Составьте программу, определяющую наибольшее значение переменных X,Y,Z. Program Pr5; Var x, y, z, p: integer; Begin WriteLn (Задайте значения x, y, z); ReadLn (x, y, z); p:=x; If p<y then p:=y; If p<z then p:=z; WriteLn(Наибольшее значение =, p:6); ReadLn; End. Второй способ реализации ветвления на несколько рукавов – использование нескольких неполных операторов IF

Второй учебный вопрос: Логические выражения и отношения Логические выражения Логические выражения (ЛВ) строятся из АВ (А и В можно заменять на любые арифметические выражения), операций отношения, логических операций и круглых скобок. Результатом вычисления ЛВ является одно из двух значений: true или false. Операции отношения Операции отношения (сравнения) имеют следующий общий вид: АВ1 * АВ2 где АВ - арифметические выражения, * - один из следующих знаков операций:, >=, =, <>. В любое логическое выражение должна входить хотя бы одна операция отношения. Например: (А>B) ИЛИ (A=В) НЕ (A>=B) (А<B) И (A=В)

Самое сложное логическое высказывание можно выразить с помощью трех основных логических операций: НЕ (NOT), И (AND), ИЛИ (OR).

Унарная операция НЕ (NOT) – логическое отрицание. Смысл этой операции можно выразить словами: "Неверно, что", то есть она меняет значение истина на ложь и наоборот. Пример: НЕ (A > 0) Это логическое выражение означает то же самое, что и A 0.

Операция логического умножения И (AND) применяется тогда, когда переменная должна удовлетворять одновременно двум более простым условиям. P, Q – простые условия

Операция логического сложения ИЛИ (OR) применяется тогда, когда переменная должна удовлетворять хотя бы одному из двух и более простых условий

Пример 1 Рассмотрим примеры: Запишем логическое выражение для случая т. X принадлежит отрезку [-6, 6] : Математическая запись: -6 Х 6. Логическое выражение: (Х -6) И (х 6) Запись выражения в Паскале: (Х >= -6) AND (х <= 6) Запишем логическое выражение для случая т. X не принадлежит отрезку [-6, 6] : Математическая запись: Логическое выражение: (Х 6) Запись выражения в Паскале: (Х 6) ИЛИ И Пример 2

Решение Пусть переменная a обозначает стаж кандидата, а b – его возраст. Тогда должно соблюдаться условие: ( a >= 5) and (b <= 40) Программа: Program RP6; Var a, b: real; Begin Writeln (Задайте значения a, b); Readln (a, b); If (a >= 5) and (b <= 40) Then Writeln (Вы приняты) Else Writeln (Вы не приняты); Readln; End. Пример 6 Фирма осуществляет набор сотрудников. Условия приема требуют не менее 5 лет рабочего стажа и возраст не более 40 лет. Написать алгоритм, проверяющий, удовлетворяет ли кандидат этим требованиям.

Третий учебный вопрос: Сравнивание текстовых величин Если первая буква первого слова стоит в алфавите дальше, чем первая буква второго слова, то второе слово больше первого. Если у сравниваемых слов первые буквы совпали, то сравниваются вторые буквы, и т.д. Сравнение строк на компьютере основано на том, что каждый символ имеет свой АSСII-код, и при сравнении строк сравниваются коды составляющих их символов.

Пример 8. Составить программу, проверяющую правильность пароля Предположим, что пароль – это слово «группа». Программа запрашивает у пользователя пароль, сравнивает его с нашим паролем. Если пользователь ввел правильный пароль, то для него доступ открыт, а если пароль не правильный, то доступ закрыт. Program Pr8; Var parol :string; Begin WriteLn (Какой пароль?); ReadLn (parol); If parol=группа then writeLn (Доступ для Вас открыт) Else writeLn (Доступ закрыт!!!); ReadLn; End.

Пример 9. Составить программу, которая предлагает Ивану-Царевичу выбрать правильное направление пути. У Ивана-Царевича есть три варианта дальнейшего пути: направо, налево, вперед. Program Pr9; Var p :string; Begin WriteLn (Куда путь держишь?); ReadLn (p); If p=направо then writeLn (Коня потеряешь); If p=налево then writeLn (Голову сложишь); If p=прямо then writeLn (Невесту найдешь); ReadLn; End.

Четвертый учебный вопрос: Оператор выбора CASE Оператор Case организует переход на один из нескольких вариантов действий в зависимости от значения выражения, называемого селектором. Общий вид: Case селектор of константа 1 : оператор 1; константа 2 : оператор 2; … константа N : оператор N else оператор end; селектор Оператор 1 Оператор 2 Оператор N Константа 1 Константа 2 Константа N else

При использовании оператора Case должны выполняться следующие правила: 1.Выражение-селектор может иметь только простой порядковый тип (целый, символьный, логический). 2. Все константы, которые предшествуют операторам альтернатив, должны иметь тот же тип, что и селектор. 3. Все константы в альтернативах должны быть уникальны в пределах оператора выбора.

Пример 10: Составить программу, которая по введенному номеру (названию) месяца выводит на экран название времени года. Program 10_1; Var k:byte; Begin Write(Введите номер месяца); Readln(k); Case k of 1, 2, 12: writeln(Зима); 3, 4, 5: writeln(Весна); 6, 7, 8: writeln(Лето); 9, 10, 11: writeln(Осень) else writeln( 'Такого месяца не существует! ); end; end. Program 10_2; Var k:string; Begin Write(Введите название месяца); Readln(k); Case k of 'Январь','Февраль,Декабрь', ': writeln('Зима'); 'Март','Апрель','Май': writeln('Весна'); 'Июнь','Июль','Август': writeln('Лето'); 'Сентябрь','Октябрь','Ноябрь': writeln('Осень') else wrteln('Такого месяца не существует!'); end;

1. Какие значения имеют А и В в результате выполнения условного оператора: (перед выполнением А=0.5, В=-1.7) if A<B then A:=B else B:=A; Закрепление полученных знаний методом решения задач 4. Какие из приведенных ниже операторов являются неправильными? IF A<B THEN A:=A*A ELSE B:=B*B; IF X AND Y THEN S:=S+1; ELSE S:=S-1; IF K<>M THEN K:=M; IF 5 THEN K:=M; IF (A<B) OR C THEN C:=FALSE; IF (A=B) AND P THEN P:=P+1<5; 5. Определить, что будет напечатано: K:=40; CASE K MOD 4 OF 0: WRITELN( K=4M); 1: WRITELN( K=4M+1 ); 2: WRITELN( K=4M+2 ); 3: WRITELN( K=4M+3) END; 2. Каким будет значение переменной A после выполнения операторов: A:= 3; if A<4 then begin A:=A+2; A:=A+3; end; 3. Дан условный оператор: if A 5 then C:=2 else C:=3; Какое значение имеет переменная A, если переменной C будет присвоено значение 3?

Итоги занятия: Ветвление на три и более рукава можно организовывать с помощью вложенных команд IF, нескольких неполных команд IF, а также, комбинируя обе возможности. Сравнение строк на компьютере основано на том, что каждый символ имеет свой АSСII-код, и при сравнении строк сравниваются коды составляющих их символов. Научились составлять логические выражения и применять их в качестве сложных условий в команде сравнения IF. Оператор Case служит для выбора одного из возможных вариантов в ситуации, которая может иметь несколько (более двух) возможных исходов. В зависимости от значения переменой выполняется оператор, помеченный соответствующей константой. Если же ни одна константа не подходит, выполняется оператор, записанный после else.

Задание на самостоятельную подготовку: 1)Изучить предлагаемую литературу. 2)Рассмотреть примеры программ для получение устойчивых навыков при написании программ с использованием условного оператора Список рекомендуемой литературы: 1. Фаронов В.В. Турбо-Паскаль 7.0. Начальный курс. Учебное пособие.-М.: Нолидж, – С Коффман Э.Б. Turbo Pascal. 5-е издание. М.: Вильямс, – С Меженный О.А. Turbo Pascal. Учитесь программировать. М.: Вильямс, – С Рапаков Г.Г., Ржеуцкая С.Ю. Turbo Pascal для студентов и школьников. Основы информатики. СПб.: БХВ-Петербург, – С Культин Н.Б. Turbo Pascal в задачах и примерах. СПб.: БХВ - Петербург, – С Балахнова М.Ю. Основы программирования на алгоритмическом языке Turbo Pascal. Учебное пособие. Алматы, 2014 г. – С

Спасибо за внимание!