Программирование на языке Паскаль
Условный оператор
Условный оператор: полная форма
Условный оператор: неполная форма
Условный оператор
Знаки отношений
Вложенный условный оператор
Выделение структуры отступами
Сложные условия
Составить программу
Составить программу
Составить программу
Задания
Задания
Задачи домашней работы
Задачи
Задачи
Задачи
Задачи
760.00K
Категория: ПрограммированиеПрограммирование

Программирование на языке Паскаль. Ветвления

1. Программирование на языке Паскаль

1
Программирование
на языке Паскаль
Ветвления
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

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

Алгоритмизация и программирование, Паскаль, 10 класс
2
Условный оператор
Задача: изменить порядок действий в зависимости от
выполнения некоторого условия.
да
a > b?
M:= a
полная
форма
ветвления
нет
M:= b
вывод M
?
К.Ю. Поляков, Е.А. Ерёмин, 2013
Если a = b?
http://kpolyakov.spb.ru

3. Условный оператор: полная форма

Алгоритмизация и программирование, Паскаль, 10 класс
3
Условный оператор: полная форма
if a > b then
M:= a
else
M:= b;
!
Перед else знак «;»
НЕ ставится!
if a > b then begin
M:= a;
end
else begin
M:= b;
end;
операторные
скобки
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

4. Условный оператор: неполная форма

Алгоритмизация и программирование, Паскаль, 10 класс
4
Условный оператор: неполная форма
M:= a
да
b > M?
нет
M:= a;
if b > M then
M:= b;
M:= b
неполная
форма
ветвления
вывод M
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

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

Алгоритмизация и программирование, Паскаль, 10 класс
5
Условный оператор
if a < b then begin
с:= a;
a:= b;
b:= c
end;
?
Можно ли обойтись
без переменной c?
?
Что делает?
b
a
4
6
6
4
2
?
4
c
Данный алгоритм (зелёным цветом) позволяет поменять
местами значения переменных а и b
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

6. Знаки отношений

Алгоритмизация и программирование, Паскаль, 10 класс
6
Знаки отношений
> <
больше, меньше
>=
больше или равно
<=
меньше или равно
=
<>
равно
не равно
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

7. Вложенный условный оператор

Алгоритмизация и программирование, Паскаль, 10 класс
7
Вложенный условный оператор
Задача: в переменных a и b записаны возрасты Андрея и
Бориса. Кто из них старше?
Сколько вариантов?
if a > b then
writeln('Андрей старше')
else
if a = b then
writeln('Одного возраста')
else
writeln('Борис старше');
?
?
Зачем нужен?
К.Ю. Поляков, Е.А. Ерёмин, 2013
вложенный
условный оператор
http://kpolyakov.spb.ru

8. Выделение структуры отступами

Алгоритмизация и программирование, Паскаль, 10 класс
8
Выделение структуры отступами
if a > b then write('А') else if a = b then
write('=') else write('Б');
if a > b then
write('А')
else
if a = b then
write('=')
else write('Б');
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

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

Алгоритмизация и программирование, Паскаль, 10 класс
9
Сложные условия
Задача: набор сотрудников в возрасте 25-40 лет
(включительно). сложное условие
if (v >= 25) and (v <= 40) then
writeln('подходит')
else
writeln('не подходит');
Приоритет :
исключающее
«ИЛИ»
1)not
2)and
3)or, xor
4) отношения (<, >, <=, >=, =, <>)
?
and
or
xor
not
Почему скобки обязательны?
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

10. Составить программу

Алгоритмизация и программирование, Паскаль, 10 класс
10
Составить программу
Задача 1: Напишите программу, которая определяет
делимость числа на 5 и 10.
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

11. Составить программу

Алгоритмизация и программирование, Паскаль, 10 класс
11
Составить программу
Блок-схема алгоритма:
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

12. Составить программу

Алгоритмизация и программирование, Паскаль, 10 класс
12
Составить программу
Программа (делимость натурального числа на 5 и 10):
program MyProgram;
var
x : integer;
begin
writeln ('Введите число');
readln (x);
if x mod 10 = 0 then
writeln (‘Число делится на 10 и 5')
else
if x mod 5 = 0 then
writeln (‘Число делится на 5 и не делится на 10')
else
writeln (‘Число не делится на 10 и 5');
end.
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

13. Задания

Алгоритмизация и программирование, Паскаль, 10 класс
13
Задания
Задача 2: Напишите программу, которая определяет
принадлежит ли точка с координатами x и y
заштрихованной области.
а)
а
y
) x2 y 2 4
x
y x
x 2
Пример выполнения программы:
Введите координаты точки
1.9 1.8
Точка принадлежит
заштрихованной области
К.Ю. Поляков, Е.А. Ерёмин, 2013
program
в
б) бMyProgram;
y sin( x)
y
var
)x,y: real;
)
y 0,5
begin
writeln ('Введите координаты точки');
readln (x,y);
if (x<=2) and (y<=x) and (x*x+y*y>=4)
x and (y>=0)
then
writeln ('Точка принадлежит заштрихованной области')
else
writeln ('Точка не принадлежит заштрихованной области');
end.
http://kpolyakov.spb.ru

14. Задания

Алгоритмизация и программирование, Паскаль, 10 класс
14
Задания
Задача 3 Напишите СЛОЖНОЕ УСЛОВИЕ на языке Паскаль,
которое определяет заштрихованную область.
а)
а
б) б
y
) x2 y 2 4
y
)
в
y sin( x)
)
y 0,5
x
y x
x
x 2
Задача 4: Напишите СЛОЖНОЕ УСЛОВИЕ на языке Паскаль,
которое определяет заштрихованную область.
а)
б)
y
в)
y x
y
y 1
y
x2 y 2 1
y x 1
x
y x2
0
y 2 x
x
x2 y2 1
x
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

15. Задачи домашней работы

Алгоритмизация и программирование, Паскаль, 10 класс
15
Задачи домашней работы
Задания на составление программ
выполняются в среде программирования,
тексты программ копируются в один
текстовый файл word и высылаются на
почту учителю. Название файла должно
иметь формат Фамилия_урок 3
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

16. Задачи

Алгоритмизация и программирование, Паскаль, 10 класс
16
Задачи
Задача 1: Напишите программу, которая получает три
числа и выводит количество одинаковых чисел в этой
цепочке.
Пример:
Введите три числа:
Напоминание!
5 5 5
Составьте сначала алгоритм
Все числа одинаковые.
решения задачи и оформите его
в виде блок-схемы. Затем
Пример:
напишите программу,
Введите три числа:
реализующую данный алгоритм.
5 7 5
Два числа одинаковые.
Пример:
Введите три числа:
5 7 8
Нет одинаковых чисел.
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

17. Задачи

Алгоритмизация и программирование, Паскаль, 10 класс
17
Задачи
Задача 2-4 (три программы): Напишите программу,
которое определяет заштрихованную область.
а)
б)
y
в)
y x
y
y 1
y
x y 1
2
2
y x 1
x
y x2
0
y 2 x
x
x2 y2 1
x
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

18. Задачи

Алгоритмизация и программирование, Паскаль, 10 класс
18
Задачи
Задача 5: Напишите программу, которая получает
возраст человека (целое число, не превышающее
120) и выводит этот возраст со словом «год», «года»
или «лет». Например, «21 год», «22 года», «25 лет».
Пример:
Напоминание!
Введите возраст: 18
Не спешите сразу писать
Вам 18 лет.
программу в среде.
Составьте сначала алгоритм
Пример:
решения задачи и оформите его,
Введите возраст: 21
например, в виде блок-схемы.
Затем напишите программу,
Вам 21 год.
реализующую данный алгоритм.
Пример:
Введите возраст: 22
Вам 22 года.
Разрешается использовать только условный оператор (IF
then … else) и используйте вложенный условный оператор.
К.Ю. Поляков, Е.А. Ерёмин, 2013
..
http://kpolyakov.spb.ru

19. Задачи

Алгоритмизация и программирование, Паскаль, 10 класс
19
Задачи
Дополнительная задача: Напишите условие, которое
определяет заштрихованную область.
Данное задание выполняется в тетради
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru
English     Русский Правила