SlideShare a Scribd company logo
1 of 12
Содержание

   Краткая форма команды ветвления
   Сложные условия




                                      1
Краткая форма команды
ветвления

Краткая форма команды ветвления отлича-
ется от обычной (полной) формы отсутствием
части else.
В общем виде она выглядит так:
if условие
then 
  серия команд;



                                         2
Блок-схема краткой формы
команды ветвления

        Предыдущие команды

      Да                 Нет
               Условие

Серия команд



        Последующие команды    3
Задача №1

Рассмотрим задачу, при решении которой ра-
зумно использовать краткую форму ветвления:
Составить программу, выводящую на экран
те из введенных пользователем трех чисел,
которые оказались четными.




                                          4
Программа
program example;
var a, b, c: integer;
begin
  readln(a, b, c);
  writeln('Even:');
  if a mod 2 = 0
  then 
    writeln(a);
  if b mod 2 = 0
  then 
    writeln(b);
  if c mod 2 = 0
  then 
    writeln(c)          5

end.
Условия в команде ветвления

Простое условие состоит из двух арифметиче-
ских выражений, соединенных при помощи
знаков <, >, =, <= (меньше либо равно), >= (бо-
льше либо равно), <> (не равно).
Например:
 a>b

 c>=0

 b*b–4*a*c<>0

 –3<=d–a 




                                              6
Сложные условия

Сложные условия получаются из простых при
помощи операций and (и) и or (или).
Например, условие «a и b – отрицательные» в
программе можно записать так:
(a<0) and (b<0),
А условие «a или b – нечетно» – так:
(a mod 2=1) or (b mod 2=1).
Замечание. Последнее условие можно
записать и так: (a mod 2)*(b mod 2)=1.
                                              7
Таблица истинности операций
and и or

Будет ли верно сложное высказывание «A and
B» или «A or B» в зависимости от истинности
высказываний A и B, можно понять из таблицы
истинности:
      A       B    A and B A or B
    верно   верно   верно   верно
    верно неверно неверно верно
   неверно верно неверно верно
   неверно неверно неверно неверно

                                          8
Задача №2

На вход программе подаются две пары чисел
(x1, y1) и (x2, y2). Определить, принадлежат
ли эти точки одной координатной четверти.

                           (x1, y1)

                (x2, y2)



                                           9
Решение

   (x1, y1) и (x2, y2) лежат в одной коорди-
    натной четверти тогда и только тогда, когда
    x1 и x2 – одного знака, а также y1 и y2 – од-
    ного знака
   То, что x1 и x2 одного знака, можно записать
    так: x1*x2>=0 (проверьте это!)
   Таким образом, в программе можно
    использовать такую команду ветвления:
if (x1*x2>=0) and (y1*y2>=0) then ...
                                               10
Программа

program example2;
var x1, y1, x2, y2: real;
begin 
  readln(x1, y1, x2, y2);
  if (x1*x2>=0) and (y1*y2>=0)
  then 
    writeln('Same quarter.')
  else 
    writeln('Different quarters.')
end. 
                                     11
Приоритет операций

В паскале существует следующий приоритет
операций (от высокого к низкому):
   and, *, /, div, mod
   or, +, –
   <, >, =, <=, >=, <>
Именно поэтому мы использовали скобки в слож-
ном условии (x1*x2>=0) and (y1*y2>=0).


                                           12

More Related Content

What's hot

C language lect_08_introduction
C language lect_08_introductionC language lect_08_introduction
C language lect_08_introductionRoman Brovko
 
Probabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignProbabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignIosif Itkin
 
Конструирование алгоритмов
Конструирование алгоритмовКонструирование алгоритмов
Конструирование алгоритмовAndrey Dolinin
 
кустурова элем функции
кустурова элем функциикустурова элем функции
кустурова элем функцииurvlan
 
Запись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка ПаскальЗапись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка ПаскальAndrey Dolinin
 
Функции, 11-й клаас
Функции, 11-й клаасФункции, 11-й клаас
Функции, 11-й клаасAlbina
 
Условный оператор
Условный операторУсловный оператор
Условный операторOlgaDask
 
введение в паскаль
введение в паскальвведение в паскаль
введение в паскальisva69
 
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189сdfdkfjs
 
Лекция 1 Скорость роста функций
Лекция 1 Скорость роста функцийЛекция 1 Скорость роста функций
Лекция 1 Скорость роста функцийsimple_people
 
Программирование разветвляющихся алгоритмов
Программирование разветвляющихся алгоритмовПрограммирование разветвляющихся алгоритмов
Программирование разветвляющихся алгоритмовAndrey Dolinin
 
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...Iosif Itkin
 
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...Iosif Itkin
 
ветвление
ветвлениеветвление
ветвлениеisva69
 

What's hot (20)

C language lect_08_introduction
C language lect_08_introductionC language lect_08_introduction
C language lect_08_introduction
 
Pri3
Pri3Pri3
Pri3
 
Probabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignProbabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems Design
 
Конструирование алгоритмов
Конструирование алгоритмовКонструирование алгоритмов
Конструирование алгоритмов
 
кустурова элем функции
кустурова элем функциикустурова элем функции
кустурова элем функции
 
Запись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка ПаскальЗапись вспомогательный алгоритмов на языка Паскаль
Запись вспомогательный алгоритмов на языка Паскаль
 
Функции, 11-й клаас
Функции, 11-й клаасФункции, 11-й клаас
Функции, 11-й клаас
 
Применение модели GOMS
Применение модели GOMSПрименение модели GOMS
Применение модели GOMS
 
Условный оператор
Условный операторУсловный оператор
Условный оператор
 
введение в паскаль
введение в паскальвведение в паскаль
введение в паскаль
 
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с331  информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
331 информатика. 8кл. миняйлова, вербовиков и др-минск, 2010 -189с
 
Лекция 1 Скорость роста функций
Лекция 1 Скорость роста функцийЛекция 1 Скорость роста функций
Лекция 1 Скорость роста функций
 
Программирование разветвляющихся алгоритмов
Программирование разветвляющихся алгоритмовПрограммирование разветвляющихся алгоритмов
Программирование разветвляющихся алгоритмов
 
4 algoritm
4 algoritm4 algoritm
4 algoritm
 
Step cpp022
Step cpp022Step cpp022
Step cpp022
 
функция
функцияфункция
функция
 
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
TMPA-2015: Expanding the Meta-Generation of Correctness Conditions by Means o...
 
Step cpp0201
Step cpp0201Step cpp0201
Step cpp0201
 
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
TMPA-2013 Vert Krikun: Finding Defects in C and C++ Pointers Using Static Ana...
 
ветвление
ветвлениеветвление
ветвление
 

Similar to Сложные условия в паскале

1 вводное занятие
1 вводное занятие1 вводное занятие
1 вводное занятиеluis_blanco_rau
 
Презентация на тему: Информатика и ИКТ
Презентация на тему: Информатика и ИКТПрезентация на тему: Информатика и ИКТ
Презентация на тему: Информатика и ИКТ2berkas
 
Презентация на тему: Повторение курса информатики 7 класс
Презентация на тему: Повторение курса информатики 7 классПрезентация на тему: Повторение курса информатики 7 класс
Презентация на тему: Повторение курса информатики 7 класс2berkas
 
лекция 3. программирование циклов
лекция 3. программирование цикловлекция 3. программирование циклов
лекция 3. программирование цикловstudent_kai
 
Поговорим про арифметику
Поговорим про арифметикуПоговорим про арифметику
Поговорим про арифметикуAndrey Akinshin
 
ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10Alexey Paznikov
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1igorm9so
 
Использование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетовИспользование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетовТранслируем.бел
 
Презентация на тему: ЕГЭ информатика
Презентация на тему: ЕГЭ информатикаПрезентация на тему: ЕГЭ информатика
Презентация на тему: ЕГЭ информатика2berkas
 
оператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и выводаоператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и выводаliza2209
 
Metody resheniya neravenstv_s_odnoj_peremennoj_zad
Metody resheniya neravenstv_s_odnoj_peremennoj_zadMetody resheniya neravenstv_s_odnoj_peremennoj_zad
Metody resheniya neravenstv_s_odnoj_peremennoj_zadIvanchik5
 

Similar to Сложные условия в паскале (20)

условия, подпрограммы
условия, подпрограммыусловия, подпрограммы
условия, подпрограммы
 
1 вводное занятие
1 вводное занятие1 вводное занятие
1 вводное занятие
 
Презентация на тему: Информатика и ИКТ
Презентация на тему: Информатика и ИКТПрезентация на тему: Информатика и ИКТ
Презентация на тему: Информатика и ИКТ
 
Презентация на тему: Повторение курса информатики 7 класс
Презентация на тему: Повторение курса информатики 7 классПрезентация на тему: Повторение курса информатики 7 класс
Презентация на тему: Повторение курса информатики 7 класс
 
сложные условия
сложные условиясложные условия
сложные условия
 
сложные условия pascal
сложные условия pascalсложные условия pascal
сложные условия pascal
 
лекция 3. программирование циклов
лекция 3. программирование цикловлекция 3. программирование циклов
лекция 3. программирование циклов
 
Поговорим про арифметику
Поговорим про арифметикуПоговорим про арифметику
Поговорим про арифметику
 
Pril
PrilPril
Pril
 
206297
206297206297
206297
 
ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10ТФРВС - весна 2014 - лекция 10
ТФРВС - весна 2014 - лекция 10
 
паскаль. часть1
паскаль. часть1паскаль. часть1
паскаль. часть1
 
Clojure #1
Clojure #1Clojure #1
Clojure #1
 
паскаль
паскальпаскаль
паскаль
 
лекция 11
лекция 11лекция 11
лекция 11
 
Использование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетовИспользование GNU OCTAVE для инженерных и математических расчетов
Использование GNU OCTAVE для инженерных и математических расчетов
 
Презентация на тему: ЕГЭ информатика
Презентация на тему: ЕГЭ информатикаПрезентация на тему: ЕГЭ информатика
Презентация на тему: ЕГЭ информатика
 
оператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и выводаоператор присваивания и процедуры ввода и вывода
оператор присваивания и процедуры ввода и вывода
 
Metody resheniya neravenstv_s_odnoj_peremennoj_zad
Metody resheniya neravenstv_s_odnoj_peremennoj_zadMetody resheniya neravenstv_s_odnoj_peremennoj_zad
Metody resheniya neravenstv_s_odnoj_peremennoj_zad
 
8 3-4
8 3-48 3-4
8 3-4
 

More from Daria Romanova

Неравенства со степенями
Неравенства со степенямиНеравенства со степенями
Неравенства со степенямиDaria Romanova
 
Работа с текстом в среде OpenOffice.org
Работа с текстом в среде OpenOffice.orgРабота с текстом в среде OpenOffice.org
Работа с текстом в среде OpenOffice.orgDaria Romanova
 
Процедуры и функции для работы со строками
Процедуры и функции для работы со строкамиПроцедуры и функции для работы со строками
Процедуры и функции для работы со строкамиDaria Romanova
 
Логические операции
Логические операцииЛогические операции
Логические операцииDaria Romanova
 
Законы алгебры логики
Законы алгебры логикиЗаконы алгебры логики
Законы алгебры логикиDaria Romanova
 
Тип string в паскале
Тип string в паскалеТип string в паскале
Тип string в паскалеDaria Romanova
 

More from Daria Romanova (7)

Неравенства со степенями
Неравенства со степенямиНеравенства со степенями
Неравенства со степенями
 
Работа с текстом в среде OpenOffice.org
Работа с текстом в среде OpenOffice.orgРабота с текстом в среде OpenOffice.org
Работа с текстом в среде OpenOffice.org
 
Процедуры и функции для работы со строками
Процедуры и функции для работы со строкамиПроцедуры и функции для работы со строками
Процедуры и функции для работы со строками
 
Логические операции
Логические операцииЛогические операции
Логические операции
 
Законы алгебры логики
Законы алгебры логикиЗаконы алгебры логики
Законы алгебры логики
 
Variables
VariablesVariables
Variables
 
Тип string в паскале
Тип string в паскалеТип string в паскале
Тип string в паскале
 

Сложные условия в паскале