Презентация к уроку "Разветвляющиеся программы. Условный оператор if , или Как компьютер делает выбор."

  • Презентации учебные
  • ppt
  • 01.12.2018
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Материал данной презентации можно использовать в 9 классе при изучении языка программирования в среде Паскаль. На данном уроке учащиеся рассматривают разветвляющиеся программы, простейшие случаи с данными операторами, знакомятся с правилами записи оператора if, а также даны задания для самостоятельной работы по составлению программ с разветвлением.
Иконка файла материала 11 Разветвляющиеся программы 5.1.ppt
Разветвляющиеся Разветвляющиеся программы  программы  Условный оператор  Условный оператор  ifif , или    , или   Как  компьютер  Как  компьютер  делает выбор делает выбор Учитель информатики МОУ Юрцовская СОШ Егорьевский  район Сафонова Ольга Викторовна
Разветвляющиеся  Разветвляющиеся  программы   на   Паскале     программы   на   Паскале       Выучим сначала 3 английских слова : – «иф», переводится как «если»; if – «зэн», переводится как «то»; then – «элз», переводится как «иначе». else Теперь приведем пример нового оператора : IF   a=28  THEN  WriteLn (f)   ELSE    k:=44    Переводится он так : ЕСЛИ  а=28  ТО   печатай  f  ИНАЧЕ  присваивай переменой  k значение 44  Мы предлагаем компьютеру сначала подумать, правда ли, что а=28, и если правда, то выполнить оператор WriteLn (f), в противном случае выполнить оператор k:=44. Оператор включает в себя другие операторы,
Простейшие   случаи  Простейшие   случаи  применения  оператора   применения  оператора   Задача 1. Компьютер должен перемножить два числа – 167 и 121. Если их произведение превышает 2000, то компьютер должен напечатать текст ПРОИЗВЕДЕНИЕ БОЛЬШОЕ, иначе – текст ПРОИЗВЕДЕНИЕ МАЛЕНЬКОЕ. После Программа: этого VAR a, b, y : Integer; компьютер в любом случае должен напечатать само VAR BBЕЕGINGIN произведение. a:=167; b:=121; y:=a * b; if y>2000 then WriteLn (‘ПРОИЗВЕДЕНИЕ БОЛЬШОЕ’) else WriteLn (‘ПРОИЗВЕДЕНИЕ МАЛЕНЬКОЕ’); WriteLn (y) END. END.
Простейшие   случаи  Простейшие   случаи  применения  оператора   применения  оператора   Задача 2. В компьютер вводятся два произвольных положительных числа – длины сторон двух кубиков. Компьютер должен посчитать объём одного кубика – большего по размеру. а1 – сторона одного кубика;а2 – сторона другого кубика; Введем обозначения: bol Программа 1: – сторона большего кубика;V – объём кубика. VAR a1, а2 : Real; VAR BBЕЕGINGIN ReadLn (a1, a2) if a1> a2 then WriteLn (a1 * a1 * a1 : 15:5) else WriteLn (a2 * a2 * a2 : 15:5); END. END.
Простейшие   случаи  Простейшие   случаи  применения  оператора   применения  оператора   Программа 2: VAR a1, а2 , V: Real; VAR BBЕЕGINGIN ReadLn (a1, a2) if a1> a2 then V:= a1 * a1 * a1 else V:= a2 * a2 * a2; WriteLn (V : 15:5); END. END. Программа 3: VAR a1, а2 , bol, V: Real; VAR BBЕЕGINGIN ReadLn (a1, a2) if a1> a2 then bol:= a1 else bol:= a2; V:= bol * bol * bol; WriteLn (V : 15:5); END. END.
Простейшие   случаи  Простейшие   случаи  применения  оператора   применения  оператора   Рассмотрим последний вариант. Программа состоит из четырёх операторов, которые выполняются в порядке записи. Первым после запуска выполняется оператор ReadLn (a1, a2), который ждёт ввода двух чисел. Введём числа 3 и 2. Компьютер понимает, что а1 равно 3, а2 равно 2, и переходит к выполнению оператора if. Он видит, что 3 > 2 , и поэтому выполняет оператор bol:= a1, а оператор bol:= a2 не выполняет. В результате в ячейке bol оказывается число 3. Затем компьютер переходит к следующему оператору – V:= bol * bol * bol и вычисляет V = 3 * 3* 3 = 27. Следующий оператор, WriteLn (V : 15:5) печатает число 27.00000.
Простейшие   случаи  Простейшие   случаи  применения  оператора   применения  оператора   Оператор if можно записывать и без части else. Например: if s
Правила  записи Правила  записи оператора     ifif              оператора  У языков программирования есть свой синтаксис, который описывает правила, по которым записываются операторы языка и из операторов составляется программа. После того как мы запускаем программу на выполнение, среда программирования прежде, чем выполнять ее, сначала проверит, нет ли в ней синтаксических ошибок, и если они есть, то программу выполнять не будет, а выдаст сообщение, указывающее, в чем Эту схему следует понимать как образец, шаблон записи ошибка. оператора, Сокращенный синтаксис оператора представим в виде указывающий порядок, в котором оператор записывается из синтаксической отдельных слов. схемы: IF – условие THEN – оператор ELSE – оператор
IF – условие THEN – оператор ELSE – оператор Слова, записанные заглавными буквами при записи оператора просто копируются. Вместо слов, записанных строчными буквами, нужно при записи оператора подставить то, что они обозначают. Оператор – любой оператор Паскаля. Условие. Пока под условием будем понимать два арифметических выражения, соединенных знаком сравнения, или условие равенства или неравенства строк. Выражение. Любое числовое или буквенное выражение, записанное на языке Паскаля. Знак сравнения. Знаков сравнения шесть: > больше >= больше или равно
Пример:     Пример:     …………… – один оператор, …………… – другой оператор, if 5 * а + 4 <= a * b then WriteLn (b) else a:= b + 5 Здесь: WriteLn (b) a:= b + 5 5 * а + 4 <= a * b 5 * а + 4 a * b <= ……………………….. – другое выражение, ………………………….. – знак сравнения. ……. – условие, ……………….. – одно выражение,
Перед END точку с запятой ставить можно, а перед ELSE точку с запятой ставить ЗАПРЕЩЕНО! Оператор IF можно записывать в краткой форме: IF – условие THEN – оператор Это уже вторая синтаксическая схема, касающаяся одного оператора. Но удобнее весь синтаксис оператора иметь перед глазами в одной схеме. IF – условие THEN – оператор [ ELSE – оператор ] Квадратные скобки здесь обозначают, что в операторе их содержимое можно писать, а можно и не писать.
Полезное   замечание   Полезное   замечание        Вычисляя выражения, стоящие в условии оператора IF, Паскаль не записывает их значения в память. Например, после выполнения b := 6; if b + 1>0 then фрагмента s:=20 в ячейке b будет храниться 6, а не 7. То же относится и к выражениям из оператора WriteLn. Например: b := 6; WriteLn (b + 1) И здесь в ячейке b останется храниться 6, а не 7. И вообще, информация в ячейках памяти не меняется при вычислении выражений.
Примеры  работы Примеры  работы оператора    ifif          оператора       Что  на  экране !!! 3 Фрагмент  программы a:= 6; if a>2 then WriteLn (‘!!!’) else WriteLn (‘!’) a:= 4; if a>5 then a:= a + 10 else a:=a – 1 WriteLn (a) s:= 6; if s – 8 <0 then s:= s + 10; WriteLn (s) s:= 6; if s < 0 then s:= s + 10; s:=s + 1; WriteLn (s)  Пояснение. Обратите внимание, что в последнем примере оператор if кончается оператором s:= s + 10, а не s:= s + 1. Поэтому оператор s:= s + 1 будет выполняться всегда, независимо от величины s. 16 7
Задания      Задания      Определить без компьютера, что будет напечатано при выполнении следующих фрагментов программ: 1). k:= 20; k:=k + 10; if k + 10 <> 30 then k:= 8 else k:=k – 1 WriteLn (k) k:= 20; k:=k + 10; if k + 10 = 30 then k:= 8 else k:=k – 1 WriteLn (k) 2). 3). p:= 1; if p > 0 then p:= p + 5; Write (p); if p > 10 then p:=p + 1; Write (p) 1. В компьютер вводятся два числа. Если первое больше второго, то вычислить их сумму, иначе – произведение. После этого компьютер должен напечатать текст ЗАДАЧА РЕШЕНА.
Задания      Задания      2. В компьютер вводятся длины трёх отрезков. Компьютер должен ответить на чтобы вопрос, правда ли, что первый отрезок достаточно короток, Указание. Для этого его длина должна быть меньше суммы образовать с другими двумя отрезками треугольник. длин других отрезков. Замечание. Пока не думайте о том, что слишком длинными могут быть второй или третий отрезок. 3. Дракон каждый год отращивает по 3 головы, но после того, как ему исполнится 100 лет, – только по 2. Сколько голов и глаз у дракона, которому N лет?