126.51K
Category: programmingprogramming

Представление об алгоритмизации и программировании (занятие №11)

1.

ПРЕДСТАВЛЕНИЕ ОБ
АЛГОРИТМИЗАЦИИ И
ПРОГРАММИРОВАНИИ
ИНФОРМАТИКА ДЛЯ СПО

2.

Понятие алгоритма
Компьютер следует рассматривать как единство
компьютерного оборудования и выполняемых программ.
Программа представляет собой описание алгоритма на
языке программирования.
Научное определение понятия алгоритма дал
американский математик А. Черч в 1930 году. Позже
другие математики вносили в это определение свои
уточнения.

3.

Определение Алгоритма
Алгоритм – описание последовательности действий
(план), исполнение которых приводит к решению
поставленной задачи за конкретное число шагов.

4.

Алгоритмизация и теория алгоритма
Алгоритмизация – процесс разработки алгоритма.
Область математики, известная как теория алгоритмов,
посвящена исследованию свойств, способов записи и
сферы применения различных алгоритмов, а также
созданию новых алгоритмов. Учеными всего мира
накоплена уникальная коллекция алгоритмов обработки
информации. Эта коллекция все время пополняется.

5.

Исполнитель
Базовым понятием теории алгоритмов является понятие
исполнителя.
Исполнитель – объект, способный понять и выполнить
действия алгоритма.

6.

Свойства
Алгоритм характеризуется следующими свойствами:
- дискретностью
- детерминированностью;
- массовостью;
- результативностью;
- конечностью.

7.

Дискретность
Дискретность (разделенный, прерывистый) – это
свойство предполагает, что любой алгоритм должен
состоять из последовательности шагов, следующих друг
за другом. Следующий шаг выполняется только после
предыдущего.

8.

Детерминированность
Детерминированность (определенность, точность) – это
свойство указывает, что любое действие в алгоритме
должно быть однозначно (недвусмысленно) определено.

9.

Массовость
Массовость – это свойство подразумевает, что один и тот
же алгоритм может применяться для решения целого
класса однотипных задач.

10.

Результативность
Результативность – в алгоритме рассмотрены все
возможные ситуации и для каждой из них получен
результат. Если результат по некоторым причинам
отсутствует, то алгоритм должен об этом сообщать

11.

Конечность
Конечность определяет завершение каждого действия в
отдельности и алгоритма в целом за конечное число
шагов.

12.

Формы представления алгоритма
Алгоритм может
быть представлен
в различных
формах:
словесной,
табличной,
графической,
программной.
Формы
представления
алгоритма
Словесная
Табличная
Графическая
Программная
Рисунки и
пиктограммы
Графы и
диаграммы
Блок-схемы

13.

Словесная форма представления
алгоритма
Словесный способ описания последовательности
действий несложен, но имеет недостатки.
Главный недостаток состоит в том, что при таком
способе допускается некоторая произвольность
изложения, нет четких стандартов описания.
Сложные задачи с анализом условий, с повторяющимися
действиями и возвратами к предыдущим пунктам трудно
представить в словесном и словесно-формульном виде.

14.

Табличная форма представления
алгоритма
Табличный способ представления алгоритма – это
описание его в виде таблицы. Примером табличного
описания алгоритма является расписание уроков.

15.

Графическая форма представления
алгоритма
Графический способ благодаря своей наглядности имеет
широкое распространение. Одной из форм графического
представления являются рисунки, графы, диаграммы,
блок-схемы

16.

Блок-схемы
Блок-схема является наиболее распространенной
формой представления алгоритма. Для отображения
алгоритма в виде блок-схемы используется стандартный
набор графических объектов (блоков), а также линии,
которые указывают направления последовательности
действий.

17.

Блок-схемы
НАЗВАНИЕ
БЛОКА
ВИД БЛОКА
НАЗНАЧЕНИЕ БЛОКА
НАЗВАНИЕ
БЛОКА
ВИД БЛОКА
НАЗНАЧЕНИЕ
БЛОКА
Начало/конец
Указание на начало
или конец алгоритма
Процесс (блок
действия)
Выполнение
действия или
группы действий
Данные
(Ввод/вывод)
Организация ввода
или вывода данных
Ранее
определенны
й процесс
Использование
вспомогательног
о алгоритма
Решение
(условный,
логический
блок)
Выбор направления
выполнения
алгоритма в
зависимости от
выполнения условия

18.

Блок-схемы
Использование блок-схем, состоящих из типового
набора блоков, позволяет трактовать алгоритм
однозначно.
Если алгоритм предназначен для исполнения
техническим устройством. Например станком с ЧПУ или
компьютером, он представляется в виде программы на
языке программирования.

19.

Пример алгоритма решения задачи,
представленного в различных формах
выражения
Задача. Требуется рассчитать необходимое
кол-во рулонов обоев для оклейки комнаты.
Заданы параметры комнаты: длина (а),
ширина (b) и высота (h). Заданы параметры
рулона обоев: длина (l), ширина (d). Считаем,
что площадь окон и дверей составляет 15% от
площади стен.
Используем для представления алгоритма
разные формы: словесно-формульное
описание, блок-схему алгоритма, программу
Словесно-формульное описание алгоритма «Оклейка
обоями» представляется в виде нумерованной
последовательности действий, понятных человеку.
Алгоритм расчета количества обоев
1. Ввести значение длин сторон и высоты комнаты:
a,b,h.
2. Ввести значение длин сторон рулона обоев: l,d
3. Рассчитать периметр комнаты: p=2(a+b)
4. Рассчитать площадб стен с учетом дверей и окон:
s1=0,85ph.
5. Рассчитать площадь одного рулона: s2=ld
6. Вычислить количество рулонов: k=div(s1,s2)+1, где
div – функция деления нацело.
7. Вывести значения k.
8. конец алгоритма.

20.

Пример алгоритма решения задачи,
представленного в различных формах
выражения
Для описания данного алгоритма может
использоваться графическая форма
представления
начало
K=div(s1,s2)+1
a,b,h,l,d
P=2(a+b)
S1=0,85ph
S2=ld
k
конец
Приведем
форму
представления
алгоритма в виде программы на
школьном алгоритмическом языке
алг Расчет количества обоев
ввод a,b,h,l,d
P:=2*(a+b)
S1:=0.85*p*h
S2:=l*d
k:=div(s1,s2)+1
вывод «Результат равен», k
кон

21.

Типовые конструкции алгоритма
Следует отметить, что любой, даже самый сложный
алгоритм можно представить с помощью трех типовых
конструкций (структур): следования, ветвления и цикла.

22.

Блок-схемы базовых структур
Набор
типовых
структур
часто
называют
алгоритмическими конструкциями. Из них, как из
конструктора, можно составить алгоритм любой
сложности.

23.

Структура «следование»
В
структуре
«следование»
действия
выполняются
последовательно,
сверху вниз, без
возвратов
Действие 1
Действие 2

24.

Структура «ветвление»
В
структуре
«ветвление»
выполняется либо одна,
либо другая группа
действий в зависимости
от
истинности
(выполнения)
или
ложности невыполнения
(условия)
Нет
Условие
Да
Действие 1
Действие 2

25.

Структура «цикл»
В структуре
«цикл»
действия
повторяются
многократно
Нет
Условие
Да
Действие 1
Действие 2

26.

Основные разновидности алгоритмов
В зависимости от того, какие базовые структуры
использованы при составлении алгоритмов, различают
три основные разновидности алгоритмов: линейный,
разветвляющийся и циклический.

27.

Линейный алгоритм
Линейный алгоритм- алгоритм, в котором действия
выполняются последовательно и однократно.

28.

Разветвляющийся алгоритм
Разветвляющийся алгоритм – алгоритм, в котором
действия выполняются в зависимости от истинности
условия.

29.

Циклический алгоритм
Циклический алгоритм – алгоритм, в котором действия
многократно повторяются

30.

Понятие о программе и
программировании
Единственной формой записи программы, понятной
компьютеру являются машинные коды.
Появление языков программирования позволило
описывать алгоритмы на языках, содержащих символы,
использующиеся в естественном языке. Это дало
возможность скрыть от программиста сложность
внутреннего устройства компьютера, благодаря чему
программист мог сосредоточиться на сути решаемой
задачи.

31.

Язык программирования
Язык программирования – искусственно созданный
человеком зык для записи алгоритма, предназначенного
для использования компьютером.

32.

Программа
Запись алгоритма в виде последовательности команд,
необходимых для решения задачи, на языке
воспринимаемом компьютером, получила название
«программа».
Процесс создания программ называется
программированием, а специалисты, занимающиеся
этим видом деятельности, - программистами.

33.

Программа
Обобщая, сформулируем следующие определение
термина «Программа»:
Программа – запись алгоритма в виде
последовательности команд на языке программирования
или машинном языке

34.

Трансляторы
Конструкции на языке программирования строятся по строгим
правилам, что обеспечивает их однозначное понимание и
позволяет получить перевод на машинный язык специальной
программе – транслятору.
Транслятор – программа, предназначенная для преобразования
программы, написанной на языке программирования, в
машинный код.

35.

Среда программирования
Среда программирования включает в себя:
редактор – программный модуль для создания и
изменения текста программы;
отладчик – программный модуль для обнаружения
ошибок в программе;
транслятор – программный модуль-переводчик.

36.

Алфавит языка программирования
Язык программирования, как и естественный язык,
представляет собой систему знаков. Основой любого
языка является алфавит.
Алфавит
языка
программирования
допустимым набором символов.
образован

37.

Служебные слова языка
программирования
Из символов алфавита по строго определенным
правилам образуются слова языка, которые называют
служебными (зарезервированными).
Все зарезервированные слова можно использовать
только в соответствии со значением, приписываемым
транслятором.

38.

Синтаксис языка программирования
Характерной особенностью языка программирования
является однозначная определенность словаря, правил
образования и значений слов.
Правила, по которым из символов образуются слова,
тексты, называются синтаксисом.

39.

Семантика языка программирования
Правила, по которым следует истолковать смысл слова,
текса, называется семантикой.

40.

Операторы языка программирования
Основную группу зарезервированных слов языков
программирования образуют операторы.
Операторы языка программирования – конструкции
языка программирования, описывающие действие.
English     Русский Rules