Рабочие листы
к вашим урокам
Скачать
1 слайд
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Казанский национальный исследовательский технологический университет»
Факультет «Промышленной политики и бизнес администрирование»
ПРЕЗЕНТАЦИЯ
Выполнила: студентка группы ФППБА 3291-171 Комекова Г
Казань. 2019
Тема : «Структурное программирование»
2 слайд
структурное программирование
вспомогательный алгоритм
рекурсия
подпрограммы: процедуры и функции
фактические и формальные параметры
параметры-значения и параметры-переменные
3 слайд
Структурное программирование
Структурное программирование – технология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры логически целостных фрагментов (блоков).
!
Э́дсгер Ви́бе Де́йкстра (11.05.1930–6.08.2002) – нидерландский учёный, труды которого оказали влияние на развитие информатики и информационных технологий; один из разработчиков концепции структурного про-граммирования, исследователь формальной верификации и распределенных вычислений. Автор нескольких книг и множества статей, самые известные публикации – книги «Дисциплина программирования», «Заметки по структурному программированию», статья «О вреде оператора GOTO».
4 слайд
Принципы структурного программирования
Некоторые принципы структурного программирования
Любая программа строится из трёх базовых управляющих конструкций: последовательность, ветвление, цикл.
В программе базовые управляющие конструкции могут быть вложены друг в друга произвольным образом.
Повторяющиеся фрагменты программы можно оформить в виде подпрограмм (процедур и функций). В виде подпрограмм можно оформить логически целостные фрагменты программы, даже если они не повторяются.
Все перечисленные конструкции должны иметь один вход и один выход.
Разработка программы ведётся пошагово, методом «сверху вниз» (метод последовательной детализации).
5 слайд
Вспомогательный алгоритм
Пример 1. Найти периметр треугольника АВС, заданного координатами своих вершин – (XA, YA), (XB, YB), (XC, YC).
(x2; y2)
(x1; y1)
x1
x2
y2
y1
𝑑= 𝑥 1 − 𝑥 2 2 + 𝑦 1 − 𝑦 2 2
ГЕОМЕТРИЯ
Решение:
Чтобы найти периметр треугольника, надо знать длины его сторон.
Для вычисления длины отрезка по координатам его концов используем формулу из геометрии.
Действия по вычислению длины отрезка представляют собой логически целостный фрагмент, который можно оформить в виде вспомогательного алгоритма.
Вызывая вспомогательный алгоритм с разными исходными данными, вычислим длины всех сторон.
А затем Найдем периметр.
Вспомогательный алгоритм – это алгоритм, целиком используемый в составе другого алгоритма.
При вызове вспомогательного алгоритма указываются его параметры (входные данные и результаты).
!
Блок-схема
6 слайд
Пример программирования сверху вниз
Начало Отрезок
Конец
Начало Периметр
Конец
P := D
Отрезок
(XА, YA, XB, YB, D)
XА, YA, XB, YB, XC, YC
P := P + D
Отрезок
(XB, YB, XC, YC, D)
P := P + D
Отрезок
(XА, YA, XC, YC, D)
P
X1, Y1, X2, Y2
REZ
D := SQRT (SQR(X1-X2)+SQR(Y1-Y2))
Каким будет результат работы алгоритма при следующих исходных данных:
XA = 1, YA = 1,
XB = 1, YB = 5,
XC = 4, YC = 1?
?
7 слайд
Рекурсивные алгоритмы
?
?
?
?
?
?
5
4
3
2
1
8 слайд
Рекурсивные алгоритмы
Алгоритм называется рекурсивным, если на каком-либо шаге он прямо или косвенно обращается сам к себе.
В рекурсивном определении должно присутствовать ограничение (граничное условие), при выходе на которое дальнейшая инициация рекурсивных обращений прекращается.
!
Приведите примеры рекурсии, встречающиеся в жизни, природе или литературных произведениях.
?
Ночь, улица, фонарь, аптека,
Бессмысленный и тусклый свет.
Живи еще хоть четверть века –
Все будет так. Исхода нет.
Умрешь – начнешь опять сначала
И повторится все, как встарь:
Ночь, ледяная рябь канала,
Аптека, улица, фонарь.
А. Блок
9 слайд
Примеры рекурсивных алгоритмов
Пример 2. Числа Фибоначчи – элементы последовательности 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, … , в которой первые два числа равны 1, а каждое следующее число равно сумме двух предыдущих чисел. Запишите рекуррентное определение чисел Фибоначчи.
Ответ:
F (n) = 1 при n ≤ 2;
F (n) = F (n-1) + F (n-2) при n > 2.
Пример 3. Запишите рекуррентное определение функции, вычисляющей количество цифр в натуральном числе n.
Ответ:
К (n) = 1 при n < 10;
К (n) = К (n div 10) + 1 при n ≥ 10.
10 слайд
Примеры рекурсивных алгоритмов
Пример 4. Алгоритм вычисления значения функции F (n), где n – натуральное число, задан следующими соотношениями:
F (1) = 2;
F (n) = n ∙ F (n – 1) при n > 1.
Определите значение функции F (6).
Решение:
F (1) = 2
F (2) = 2 ∙ F (1) = 2 ∙ 2 = 4
F (3) = 3 ∙ F (2) = 3 ∙ 4 = 12
F (4) = 4 ∙ F (3) = 4 ∙ 12 = 48
F (5) = 5 ∙ F (4) = 5 ∙ 48 = 240
F (6) = 6 ∙ F (5) = 6 ∙ 240 = 1440
Подобные вычисления можно проводить в уме, а их результаты фиксировать в таблице:
Ответ: 1440
11 слайд
Подпрограммы в Паскале
Запись вспомогательных алгоритмов в языках программирования осуществляется с помощью подпрограмм.
Подпрограмма – относительно независимая часть программы, оформленная специальным образом и имеющая оригинальное имя, по которому ее можно вызывать в тексте программы.
Подпрограммы в Паскале
Процедуры
Функции
12 слайд
Процедура
Процедура – подпрограмма, имеющая произволь-ное количество входных и выходных данных.
!
Описание процедуры:
procedure <имя>(<описание параметров-значений>;
var <описание параметров-переменных>);
begin
<операторы>
end;
В заголовке процедуры после её имени приводится перечень формальных параметров и их типов.
Для вызова процедуры достаточно указать её имя со списком фактических параметров.
Между фактическими и формальными параметрами должно быть полное соответствие по количеству, порядку следования и типу.
13 слайд
Функция
Функция – подпрограмма, имеющая единственный результат, записываемый в ячейку памяти, имя которой совпадает с именем функции.
!
Описание функции:
function <имя>(<описание параметров>): <тип_функции>;
begin
<операторы>
end;
В заголовке функции после её имени приводится описание входных данных – перечень формальных параметров и их типов. Там же указывается тип самой функции, т. е. тип результата. В блоке функции должен присутствовать оператор:
<имя_функции> := <результат>;
Для вызова функции достаточно указать её имя со списком
фактических параметров.
14 слайд
используют, если необходимо передать значения переменных в подпрограмму, а затем возвратить их изменившиеся значения в место вызова подпрограммы
играют роль как входных, так и выходных параметров
описываются в заголовке:
Var Имя_переменной: тип
соответствующие им фактические параметры могут быть только переменными
определяют исходные данные, которые нежелательно изменять в ходе выполнения подпрограммы
играют роль входных параметров
описываются в заголовке:
Имя_переменной: тип
соответствующие им фактические параметры могут быть константами, переменными, выражениями
Типы формальных параметров
Формальные параметры
Параметры-значения
Параметры-переменные
15 слайд
Структурное программирование – технология разработки программного обеспечения, в основе которой лежит представление программы в виде иерархической структуры логически целостных фрагментов (блоков).
Основные принципы структурного программирования:
любая программа строится из трёх базовых управляющих конструкций: последовательность, ветвление, цикл;
в программе базовые управляющие конструкции могут быть вложены друг в друга произвольным образом;
повторяющиеся или логически целостные фрагменты программы можно оформить в виде подпрограмм (процедур и функций)
все перечисленные конструкции должны иметь один вход и один выход;
разработка программы ведётся пошагово, методом «сверху вниз».
16 слайд
Вспомогательный алгоритм – это алгоритм, целиком используемый в составе другого алгоритма.
Алгоритм называется рекурсивным, если на каком-либо шаге он прямо или косвенно обращается сам к себе.
Запись вспомогательных алгоритмов в языках программирования осуществляется с помощью подпрограмм. В Паскале различают два вида подпрограмм: процедуры и функции.
17 слайд
Информационные источники
https://commons.wikimedia.org/wiki/File:Edsger_Wybe_Dijkstra.jpg
https://ru.wikipedia.org/wiki/Дейкстра,_Эдсгер_Вибе
http://iq230.com/images/sampledata/1/teacher-desk.jpg
http://cliparts.co/cliparts/Bcg/je7/Bcgje7dc8.png
http://marshak.su/wp-content/uploads/2015/08/doll_1920_2.png
http://school15yi.ru/wp-content/uploads/2017/04/3333.jpg
Рабочие листы
к вашим урокам
Скачать
6 625 053 материала в базе
Настоящий материал опубликован пользователем Фирсова Мария Викторовна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт
Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.
Удалить материалВаша скидка на курсы
40%Курс профессиональной переподготовки
500/1000 ч.
Курс профессиональной переподготовки
300/600 ч.
Курс повышения квалификации
36 ч. — 180 ч.
Курс профессиональной переподготовки
600 ч.
Мини-курс
6 ч.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.