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

Содержание

Слайд 2

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

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

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

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

Случайные и псевдослучайные числа Случайные явления встретил слона – не

Слайд 3

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

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

var K, L, M: integer;
K:=

random(6); { отрезок [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) }

Датчик случайных чисел Целые числа на отрезке: var K, L,

Слайд 4

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

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

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

Слайд 5

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

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

if a > b then

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

Слайд 6

Вариант 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;

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

Вариант 1. Программа program Maximum; var a, b, M: integer;

Слайд 7

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

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

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

Слайд 8

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


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

числа'); read(a, b);
M:= a; if b > a then M:= b; writeln('Наибольшее число ', M); end.

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

Вариант 2. Программа program Maximum2; var a, b, M: integer;

Слайд 9

Примеры

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

then
M:= b;

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

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

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

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

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

Слайд 10

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

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

переменной b – возраст Бориса. Определить, кто из них старше.

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

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

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

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

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

Слайд 11

Задачи

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

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

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

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

Слайд 12

Задачи

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

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

Слайд 13

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

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

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

Слайд 14

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


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

>= 25 then
if x <= 40 then
write('Подходит!')
else
write('Не подходит.')
else
write('Не подходит.');
end.

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

Плохое решение program Work; var x: integer; begin writeln('Введите ваш

Слайд 15

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

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

if (x >= 25) and (x <= 40) then
write('Подходит!')
else
write('Не подходит.');
end.

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

Хорошее решение (операция «И») program Work; var x: integer; begin

Слайд 16

Примеры

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

if (10

<= a) and (a <= 99) then
write('Да');

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

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

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

Слайд 17

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

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

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

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

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

(d = 1) or (d = 4)

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

Слайд 18

Ещё пример

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

Ввести возраст человека и определить, подходит ли он фирме (вывести ответ 'подходит' или 'не подходит'). Использовать «ИЛИ».

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

(x < 25) or (x > 40)

Ещё пример Задача. Фирма набирает сотрудников от 25 до 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 > 2) or (c <> 5) and (b < a) then
...

4

2

3

5

6

Порядок выполнения операций выражения в скобках НЕ (not) И (and)

Слайд 21

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

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

c := 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)

Да

Да

Нет

Да

Да

Нет

Нет

Да

Сложные условия Истинно или ложно при a := 2; b

Слайд 22

Задачи

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

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

Слайд 23

Задачи

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

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