Similar presentations:
Представление об алгоритмизации и программировании (занятие №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.
Операторы языка программированияОсновную группу зарезервированных слов языков
программирования образуют операторы.
Операторы языка программирования – конструкции
языка программирования, описывающие действие.