112.96K
Категория: ПрограммированиеПрограммирование

Условный оператор. Язык программирования Pascal

1.

УСЛОВНЫЙ ОПЕРАТОР
язык программирования Pascal.
Я услышал и забыл.
Увидел и запомнил.
Сделал и понял!
Чарльз Бэббидж.

2.

Разветвляющимся называется алгоритм, в котором
выбирается одна из нескольких возможных серий
команд. Каждый подобный путь называется ветвью
алгоритма.
Признаком разветвляющегося алгоритма является
наличие операций проверки условия. Условие – это
логическое выражение, которое может быть записано в
операторе явно или вычислено в программе. Для
записи простых условий используются операции
отношения:
< меньше
x>y
> больше
a>5
<= меньше или равно
>= больше или равно
<> не равно a+b<>0
= равно s mod 2 = 0
n<=0
t>=r

3.

В ветвлении можно проверять несколько условий
одновременно. Для этого условия связываются между
собой логическими операциями. Получается сложное
условие.
Если необходимо проверить одновременное выполнение
нескольких условий, для их связи используют
логическую операцию AND (И)
Например, условие 0<x<5, в ветвлении будет
выглядеть так:
(х>0) and (х<5)

4.

Если же нужно чтобы выполнялось хотя бы одно из
нескольких условий, то для их связи используют
операцию OR (ИЛИ)
Например, условия y<0 или y>9 будет выглядеть
следующим образом:
(y<0) or (y>9)
Логическая операция NOT (НЕ) меняет значение
условия на противоположное.
Например, необходимо взять все значения х, кроме 1:
not (x=1)
При связывании нескольких условий логическими
операциями, необходимо заключать простые условия в
скобки.

5.

Основные варианты структуры ветвления:
если - то;
то - иначе;
да
условие
нет
если –
да
условие
серия команд 1
серия команд 2
серия команд 1
полное ветвление
неполное ветвление
нет

6.

Запись команды ветвления на языке
программирования Pascal.
IF (условие)
THEN (оператор 1);

7.

IF (условие) THEN
BEGIN
<оператор 1>;
<оператор 2>;

<оператор n>;
END;

8.

Запись полного ветвления
на языке программирования Pascal.
IF (условие)
THEN (оператор 1)
ELSE (оператор 2);
;

9.

IF (условие) THEN
BEGIN
<оператор 1>;
<оператор 2>;

<оператор n>;
END
ELSE
BEGIN
<оператор 1>;
<оператор 2>;

<оператор n>;
END;

10.

ЗАДАЧА 1. Из двух чисел А и В найти набольшее.
PROGRAM zadacha1;
VAR A, B, max: INTEGER; {описываем переменные А , В и max
целыми числами}
BEGIN
WRITE(‘A=’); {Вводим с клавиатуры числа А и В}
READLN(A);
WRITE(‘B=’);
READLN(B);
{Если A>B , то наибольшее число А, иначе наибольшее число В}
IF A>B THEN max :=A
ELSE max :=B;
WRITELN (‘Большее число = ‘, max );
END.

11.

ЗАДАЧА 2. Из двух чисел А и В найти набольшее и наименьшее.
PROGRAM zadacha2;
VAR A, B, max, min: INTEGER;
BEGIN
WRITE(‘A=’); READLN(A);
WRITE(‘B=’); READLN(B);
IF A>B THEN begin
max :=A;
min :=B;
end
ELSE begin
max :=B;
min :=A;
end;
WRITELN (‘max=‘, max, ‘ min=‘, min);
END.

12.

Вложенное ветвление:
да
Условие 1
да
серия команд 1
нет
Условие 2
серия команд 2
IF (условие)
THEN (оператор 1)
ELSE IF (условие) THEN (оператор 1)
ELSE (оператор 2);
нет
серия команд 3

13.

ЗАДАЧА 2. Из двух чисел А и В найти набольшее и наименьшее.
PROGRAM zadacha2;
VAR A, B, max, min: INTEGER;
BEGIN
WRITE(‘A=’); READLN(A);
WRITE(‘B=’); READLN(B);
WRITE (‘Большее число : ‘);
IF A>B
THEN begin
max :=A;
min :=B;
WRITELN (‘max=‘, max, ‘ min=‘, min);
end
ELSE IF A<B THEN begin
max :=B;
min :=A;
WRITELN (‘max=‘, max, ‘ min=‘, min);
end
ELSE WRITELN (‘Числа равны друг другу‘);
END.

14.

Задача 3. Найти наибольшее из трёх данных чисел
a, b, c.
Program zadacha3;
Var a, b, c, max: Integer;
Begin
writeln(‘введи числа’);
readln(а,b,c);
if a>b then
if a>c then max:=a
else max:=c
else
if b>c then max:=b
else max:=c;
writeln(‘большее число равно ’, max);
End.

15.

ЗАДАЧА 3.
Дано действительное число х. Вычислить f(х), если
0, x 0,
2
f ( x) x x, 0 x 1,
x 2 sin x 2 , x 1.

16.

Решение:
Program alg1;
Var x,f:real;
Begin
writeln(‘введите действительное
число:’);readln(x);
if x<=0
then f:=0
else if x<=1 then f:=sqr(x)-x
else f:=sqr(x)-sin(Pi*x*x);
writeln(‘значение функции F(x) при
x=‘,x,’равно’,f);
End.

17.

Задачи для самостоятельного решения
1. Санкт-Петербург менял свое название несколько раз. Составить
программу которая на введенную дату выдает название города. Если:
с 1703 – 1914 г. – Санкт Петербург
с 1914 – 1924 г. Петроград
с 1924 – 1991 г. Ленинград
с 1991г. – Санкт Петербург
2. Определить количество дней в году, который вводит пользователь
(високосный, кратны 4, но некратны 100 - 366 дней, не високосный –
365 дней)
3. Дано действительное число х. Вычислить f(x), если
2 х, x 0,
f ( x ) 0, x 0,
х , x 0.
English     Русский Правила