
Информатика_140800 / 2011-2012-учебный год / 1_семестр / Сам_изуч / Тема_4
.pdf
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Основы алгоритмизации и структуры данных
(лекции по курсу Информатика для бакалавров направления 140800 )
Преподаватель каф. ЭАФУ
Нагайцева Ольга Викторовна
Томск 2011

понятие, свойства, способы записи и типы алгоритмов;
структуры данных (массив, стек, очередь, дек);
алгоритмы сортировки данных (методы пузырька, Шелла, выбором)
2

Слово «алгоритм» произошло от имени
учѐного аль-Хорезми
|
определенная последовательность |
|
|
Алгоритм - действий, направленных на решение |
|
Абу Абдуллах Мухаммеда |
поставленной задачи |
|
ибн Муса аль-Хорезми |
||
|
||
(математик, астроном и географ, |
|
|
IX в.) |
|
|
|
Впроцессе алгоритмизации выбирается:
метод решения задачи
(с указанием расчетных формул, логических условий, соотношений для контроля достоверности результатов)
формы представления исходной информации с учетом специфики ЭВМ
3

Запись алгоритма распадается на отдельные команды
Команда - это некоторое элементарное законченное действие
Совокупность команд, которые могут быть
выполнены в рамках алгоритма, называется
системой команд
4

|
|
|
|
|
|
Правильность – способность алгоритма |
|
||
|
Дискретность |
– разделение решения |
|
|
|||||
|
|
|
|
|
|
||||
|
задачи на |
отдельные |
элементарные |
|
обеспечивать получение именно того |
|
|||
|
|
|
|
|
|
||||
|
действия, |
возможность |
выполнения |
|
результата, который требуется |
|
|||
|
|
|
|
|
|
||||
|
которых не вызывает сомнений |
|
|
|
|
|
|||
|
|
|
|
Общность – алгоритм может быть |
|||||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
применен как к искомой задаче, так и к |
|
|
Понятность - |
исполнитель должен знать, |
|
||||||
|
|
|
|
||||||
|
как выполнить каждое действие |
|
|
|
целому классу подобных задач |
||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
Детерминированность - алгоритм должен
быть сформулирован так, чтобы действия
были точно определены, однозначны и давали один и тот же результат при одинаковых входных данных
Результативность - при любых допустимых исходных данных исполнение алгоритма должно завершиться за конечное число
шагов и привести к решению поставленной
задачи.
Эффективность – алгоритм должен обеспечивать получение результата с
меньшими затратами
5

словесно-формульная запись
запись на псевдокоде
графическая запись в виде блок-схем
запись на языке программирования
6

Блок -схема – система связных геометрических фигур
Каждая фигура обозначает один этап решения задачи и называется блоком
Порядок их выполнения указывается стрелками, соединяющими блоки
Обычно в схеме блоки располагаются
сверху вниз в порядке своего выполнения
Блок «прерывание» всегда имеет
только один вход или только один выход,
Блоки «данные» и «действие» всегда имеют один вход и один выход
Блок «условия» всегда имеет одни вход и два выхода.
Блоки соединяются вертикальными или горизонтальными линиями
Линии должны подходить к середине блока.
Направления вниз и вправо
называется основным, при этом
стрелки не указываются.
Несколько линий может соединяться над блоком, а приходящая к блоку линия разбиваться не может.
Линии не должны пересекаться. В противном случае нужно использовать символы разрыва (соединения).
7

Для размеров используются следующие обозначения:
а – величина кратная 5
b |
1, 5 |
a |
||
|
2 |
|||
|
|
Название |
Диаграмма |
Конец, выход из подпрограммы
Прерывание |
0,5a |
|
|
|
|||
|
|||
|
|
|
|
|
|
|
Начало, вход в подпрограмму
b
0,5a
Данные |
a |
|
b |
Действие |
a |
|
|
|
b |
Назначение
Начало, конец, выход из программы
Ввод-вывод данных
Вычислительное действие или их последовательность
8

Название
Условие
Источникиприемники данных
Диаграмма
a > b
да
1,5a |
a |
a |
b
a
a
a |
b |
Назначение
Проверка условий, переход к действию по условию
Данные хранятся в
оперативной памяти
Данные хранятся на жестком диске
Данные на печатающее устройство
Данные на пульт оператора (монитор)
9

Название |
Диаграмма |
|
Назначение |
Ранее определенный |
|
a |
Для представления |
|
|
оператора вызова |
|
процесс |
|
|
|
|
|
функции |
|
|
b |
|
|
|
Начало |
|
|
|
цикла |
|
|
|
Операторы |
|
|
Циклы |
Конец |
|
|
цикла |
|
|
|
|
i=0; i<10; i++ |
a |
|
a |
b |
Используется для
A
Соединение A представления
разрывов
1
0