Основы программирования (Паскаль)

Содержание

Слайд 2

Случайные и псевдослучайные числа

Случайные явления
встретил слона – не встретил слона
жеребьёвка на

Случайные и псевдослучайные числа Случайные явления встретил слона – не встретил слона
соревнованиях
лотерея
случайная скорость (направление выстрела ) в игре

Случайные числа — это последовательность чисел, в которой невозможно предсказать следующее число, даже зная все предыдущие.

Слайд 3

Датчик случайных чисел

Целые числа на отрезке:

var K, L, M: integer;
K:= random(6);

Датчик случайных чисел Целые числа на отрезке: var K, L, M: integer;
{ отрезок [0,5] }
L:= random(6)+1; { отрезок [1,6] }
M:= random(b-a+1)+a; { отрезок [a,b] }

Вещественные числа в полуинтервале:

var x, y, z, w: real;
x:= random; { полуинтервал [0,1) }
y:= 7*random; { [0,7) }
z:= 7*random + 5; { [5,12) }
w:= (b-a)*random + a; { [a,b) }

Слайд 4

Основы программирования (Паскаль)

§ 22. Ветвления

Основы программирования (Паскаль) § 22. Ветвления

Слайд 5

Выбор наибольшего из двух чисел

полная форма ветвления

if a > b then
M:=

Выбор наибольшего из двух чисел полная форма ветвления if a > b
a
else
M:= b;

Слайд 6

Вариант 1. Программа


program Maximum; var a, b, M: integer; begin
writeln('Введите два целых числа');

Вариант 1. Программа program Maximum; var a, b, M: integer; begin writeln('Введите
read(a, b); if a > b then else writeln('Наибольшее число ', M); end.

M:= a

M:= b;

полная форма условного оператора

Слайд 7

Выбор наибольшего из двух чисел-2

неполная форма ветвления

Выбор наибольшего из двух чисел-2 неполная форма ветвления

Слайд 8

Вариант 2. Программа


program Maximum2;
var a, b, M: integer;
begin writeln('Введите два целых числа');

Вариант 2. Программа program Maximum2; var a, b, M: integer; begin writeln('Введите
read(a, b);
M:= a; if b > a then M:= b; writeln('Наибольшее число ', M); end.

неполная форма условного оператора

Слайд 9

Примеры

if a < b then
M:= a;
if b < a then

Примеры if a M:= a; if b M:= b; if a begin
M:= b;

if a < b then
begin
c:= a;
a:= b;
b:= c
end;

Поиск минимального:

begin
c:= a;
a:= b;
b:= c
end;

составной оператор

Слайд 10

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

Задача. В переменной a записан возраст Антона, а в переменной

Вложенные условные операторы Задача. В переменной a записан возраст Антона, а в
b – возраст Бориса. Определить, кто из них старше.

if a > b then
writeln('Андрей старше')
else
if a=b then
writeln('Одного возраста')
else
writeln('Борис старше');

if a=b then
writeln('Одного возраста' )
else
writeln('Борис старше' );

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

else относится к ближайшему if

Слайд 11

Задачи

«A»: Ввести два целых числа, найти наибольшее и наименьшее из них.

Задачи «A»: Ввести два целых числа, найти наибольшее и наименьшее из них.

Пример:
Введите два целых числа:
1 5
Наибольшее число 5
Наименьшее число 1

«B»: Ввести четыре целых числа, найти наибольшее из них.
Пример:
Введите четыре целых числа:
1 5 4 3
Наибольшее число 5

Слайд 12

Задачи

«C»: Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из них

Задачи «C»: Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из
старше.
Пример:
Возраст Антона: 15
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Борис старше всех.
Пример:
Возраст Антона: 17
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Антон и Борис старше Виктора.

Слайд 13

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

Задача. Фирма набирает сотрудников от 25 до 40 лет включительно. Ввести

Сложные условия Задача. Фирма набирает сотрудников от 25 до 40 лет включительно.
возраст человека и определить, подходит ли он фирме (вывести ответ 'подходит' или 'не подходит').
Особенность: надо проверить, выполняются ли два условия одновременно:
возраст ≥ 25 возраст ≤ 40

Слайд 14

Плохое решение


program Work;
var x: integer;
begin
writeln('Введите ваш возраст');
read(x);
if x >=

Плохое решение program Work; var x: integer; begin writeln('Введите ваш возраст'); read(x);
25 then
if x <= 40 then
write('Подходит!')
else
write('Не подходит.')
else
write('Не подходит.');
end.

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

Слайд 15

Хорошее решение (операция «И»)

program Work;
var x: integer;
begin
writeln('Введите ваш возраст');
read(x);
if

Хорошее решение (операция «И») program Work; var x: integer; begin writeln('Введите ваш
(x >= 25) and (x <= 40) then
write('Подходит!')
else
write('Не подходит.');
end.

сложное условие

Слайд 16

Примеры

Задача. Вывести 'Да', если число в переменной a – двузначное.

if (10 <=

Примеры Задача. Вывести 'Да', если число в переменной a – двузначное. if
a) and (a <= 99) then
write('Да');

Задача. Вывести 'Да', если число в переменной a – двузначное и делится на 7.

if (10 <= a) and (a <= 99)
and (a mod 7 = 0) then
write('Да');

Слайд 17

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

Задача. Самолёт летает по понедельникам и четвергам. Ввести номер дня недели

Сложные условия Задача. Самолёт летает по понедельникам и четвергам. Ввести номер дня
и определить, летает ли в этот день самолёт.
Особенность: надо проверить, выполняется ли одно из двух условий:
день = 1 день = 4

if (d = 1) or (d = 4) then
write('Летает')
else
write('Не летает');

сложное условие

(d = 1) or (d = 4)

Слайд 18

Ещё пример

Задача. Фирма набирает сотрудников от 25 до 40 лет включительно. Ввести

Ещё пример Задача. Фирма набирает сотрудников от 25 до 40 лет включительно.
возраст человека и определить, подходит ли он фирме (вывести ответ 'подходит' или 'не подходит'). Использовать «ИЛИ».

if ??? then
write('Не подходит!')
else
write('Подходит.');

(x < 25) or (x > 40)

Слайд 19

Простые и сложные условия

Простые условия (отношения)
< <= > >= = <>
Сложное

Простые и сложные условия Простые условия (отношения) >= = Сложное условие –
условие – это условие, состоящее из нескольких простых условий (отношений), связанных с помощью логических операций:
И – одновременное выполнение условий
x >= 25 and x <= 40
ИЛИ – выполнение хотя бы одного из условий
x <= 25 or x >= 40
НЕ – отрицание, обратное условие
not (x > 25) ⇔ ???

равно

не равно

x <= 25

Слайд 20

Порядок выполнения операций

выражения в скобках
НЕ (not)
И (and)
ИЛИ (or), исключающее ИЛИ (xor)

1

if not(a

Порядок выполнения операций выражения в скобках НЕ (not) И (and) ИЛИ (or),
> 2) or (c <> 5) and (b < a) then
...

4

2

3

5

6

Слайд 21

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

Истинно или ложно при a := 2; b := 3; c

Сложные условия Истинно или ложно при a := 2; b := 3;
:= 4;
not (a > b)
(a < b) and (b < c)
(a > c) or (b > c)
(a < b) and (b > c)
(a > c) and (b > d)
not(a >= b) or (c = d)
(a >= b) or not (c < b)
(a > c) or (b > c) or (b > a)

Да

Да

Нет

Да

Да

Нет

Нет

Да

Слайд 22

Задачи

«A»: Напишите программу, которая получает три числа - рост трёх спортсменов, и

Задачи «A»: Напишите программу, которая получает три числа - рост трёх спортсменов,
выводит сообщение «По росту.», если они стоят по возрастанию роста, или сообщение «Не по росту!», если они стоят не по росту.
Пример:
Введите рост трёх спортсменов:
165 170 172
По росту.
Пример:
Введите рост трёх спортсменов:
175 170 172
Не по росту!

Слайд 23

Задачи

«B»: Напишите программу, которая получает номер месяца и выводит соответствующее ему время

Задачи «B»: Напишите программу, которая получает номер месяца и выводит соответствующее ему
года или сообщение об ошибке.
Пример:
Введите номер месяца:
5
Весна.
Пример:
Введите номер месяца:
15
Неверный номер месяца.
If (a=1) or (a=2) or (a=12)then
writeln ('Зима');
Имя файла: Основы-программирования-(Паскаль).pptx
Количество просмотров: 36
Количество скачиваний: 0