Реализация ветвлений в алгоритмах. Структурные операторы (Object Pascal)

Содержание

Слайд 2

План 1. Понятие «условие». 2. Условный оператор ЯП Object Pascal 3.

План

1.      Понятие «условие».
2.      Условный оператор ЯП Object Pascal
3.      Составной оператор ЯП

Object Pascal
4.      Оператор выбора ЯП Object Pascal
Слайд 3

1. Понятие «условие» Условие – это свойство величин, которое может соблюдаться

1. Понятие «условие»

Условие – это свойство величин, которое может соблюдаться или

не соблюдаться для их конкретных значений.
Условие представляет собой логическое выражение, вычисляемое в первую очередь. Значения: True или False.

X<>Y a<=c
S mod 3=0 odd(x)=true
B>0 c=‘a’

Слайд 4

Условие: - простое - составное (a>90) or (b>90) or (c>90) 'Треугольник

Условие:
- простое
- составное
(a>90) or (b>90) or (c>90)

'Треугольник - тупоугольный'
(a<90) and (b<90) and (c<90)
'Треугольник - остроугольный'
? Условие существование треугольника ?
Слайд 5

Таблица истинности

Таблица истинности

Слайд 6

2. Условный оператор Полная форма Если условие То серия 1 Иначе

2. Условный оператор

Полная форма

Если условие
То
серия 1
Иначе
серия 2
Конец - если
if <условие>

then <оператор1>
else <оператор2>;
Слайд 7

Задача: определить вид треугольника по введенным углам program Pr2; Var a,b,c:integer;

Задача: определить вид треугольника по введенным углам
program Pr2;
Var a,b,c:integer;
begin
writeln(‘введите углы

a, b, c');
readln(a,b,c);
if (a>90)or(b>90)or(c>90) then writeln(‘Треугольник - тупоугольный')
else writeln(‘треугольник - остроугольный');
readln;
end.
Слайд 8

Задача: вывести на экран максимальное из двух чисел Program Pr3; Var

Задача: вывести на экран максимальное из двух чисел
Program Pr3;
Var x,y,max:integer;
begin
writeln(‘введите

два числа x,y');
readln(x,y);
if x>y then max:=x
else max:=y;
writeln('max = ', max);
readln;
end.
Слайд 9

Неполная форма Если условие То серия Конец - если if then ;

Неполная форма

Если условие
То
серия
Конец - если

if <условие> then <оператор>;

Слайд 10

Задача: вывести на экран максимальное из двух чисел Var x, y,

Задача: вывести на экран максимальное из двух чисел
Var x, y, max:integer;
begin


max:=y;
if x>max then max:=x;

end.
Слайд 11

3. Составной оператор последовательность произвольных операторов программы, заключенная в операторные скобки

3. Составной оператор

последовательность произвольных операторов программы, заключенная в операторные скобки

- зарезервированные слова begin ... end
begin
a:=a+1;
f:=f*a;
end;
Слайд 12

begin begin begin end; end; end;

 begin
begin
begin
end;
end;
end;

Слайд 13

Задача: найти площадь треугольника по формуле Герона Var a, b, c,

Задача: найти площадь треугольника по формуле Герона
Var a, b, c, r

:real;
Begin
Writeln(’ введите стороны’);
Readln(a,b,c);
if (a>0) and (c>0) and (b>0)
then
begin
p:=(a+b+c)/2;
r:=sqrt(sqr(p-a)+sqr(p-b)+sqr(p-c));
writeln(’площадь =’,r)
end
else
writeln (’треугольник не существует’);
Readln
end.
Слайд 14

Составной условный оператор if then if then else ;

Составной условный оператор
if <условие1> then
if <условие2> then
<оператор1>
else

<оператор2>;
Слайд 15

if then begin if then end else ; Нет Да условие условие Да Нет S2

 
if <условие1> then
begin
if <условие2> then <оператор1>
end
else <оператор2>;

Нет

Да

условие

условие

Да

Нет

S2

Слайд 16

4. Оператор выбора Выбор выражение Список значений 1 выполнять Серия 1

4. Оператор выбора

Выбор выражение
Список значений 1 выполнять Серия 1
Список значений

2 выполнять Серия 2

Список значений k выполнять Серия k
Иначе выполнять Серия 0
Конец- выбор
Слайд 17

Слайд 18

case of : ; : ; ... : ; else end;

case <выражение> of
<список значений 1>: <оператор 1>;
<список значений 2>: <оператор 2>;

...
<список значений n>: <оператор n>;
else <оператор n+1>
end;
Слайд 19

Задача: определить порядок целого числа n от 0 до 999 Var

Задача: определить порядок целого числа n от 0 до 999

Var

N: integer;
Begin
Randomize;
N:=Random(1000);
case N of
0..9: writeln('однозначное');
10..99: writeln('двузначное');
100..999: writeln('трехзначное')
else
writeln('Число’, N,’не входит в указанный диапазон')
end;

Слайд 20

Задача: определить тип символа Var symbol: Char; … case symbol of

Задача: определить тип символа

Var symbol: Char;

case symbol of
’0’..’9’: writeln('это цифра');

’a’..’z’: writeln('строчная буква');
’A’..’Z’: writeln('прописная буква');
else writeln(‘Это другой символ’)
end;