
- •2.Понятие информации
- •3. Кодирование Информации.
- •Системы счисления, используемые в эвм
- •Двоично-десятичная система счисления
- •Перевод целых чисел.
- •Двоичная арифметика. Выполнение арифметических операций.
- •(К вопросу об истории вычислительной техники)
- •6. Состав пк и Принцип работы пк
- •7. Запоминающие устройства.
- •8. Дополнительные устройства пк
- •Программы и их виды.
- •10. Понятие и назначение операционной системы. Разновидности ос. Организация файловой системы.
- •Внутренние команды мс дос: (Обрабатываются командным процессором )
- •2. Архиваторы.
- •3. Антивирусные программы
- •Условия безопасной работы компьютерных систем и технология обнаружения заражения вирусами
- •Классификация и характеристика компьютерных вирусов
- •Антивирусные средства
- •4. К сервисным или служебным программам относятся также и различные редакторы.
- •12. Основы машинной графики
- •Лекция 8. Передача информации. Локальные компьютерные сети.
- •Система адресации в сети internet
- •2. Формы представления моделей. Формализация.
- •3. Системный подход в моделировании.
- •(20.) Типы им
- •Одним из примеров Информационной модели данных могут служить базы данных.
- •Компьютерное моделирование
- •1.1. Понятие алгоритма
- •Алгоритмическая система
- •Алгоритмизация
- •Примеры решения линейных задач, задач на разветвление (выбор мах, мин), на циклические процессы(сумма, произведение), табулирование функции (вложенные циклы), функции пользователя.
- •1. Построение алгоритмов с использованием цикла с параметром Вычисление конечных сумм и произведений
- •2. Построение алгоритмов с использованием цикла с предусловием
- •3. Построение алгоритмов с использованием цикла с постусловием
- •Вспомогательные алгоритмы. Процедуры. Функции.
- •31. Структурное программирование.
- •28. Эволюция и классификация языков программирования.
- •29. Интегрированные среды программирования.
Алгоритмическая система
Понятие «алгоритмическая система» дает формальный ответ на вопрос, что должно быть известно, и доступно разработчикам алгоритмов. Алгоритмическая система - набор средств и понятий, позволяющих строить некоторое множество алгоритмов для решения определенного класса задач. Алгоритмическая система определяется наличием четырех составляющих ее частей:
1) множеством входных объектов или исходных данных, подлежащих обработке алгоритмами данной системы;
2) множеством выходных объектов или результатов выполнения алгоритмов данной системы;
3) системой команд исполнителя, т.е. набором тех действий, которые может выполнять исполнитель, и которое мы можем описывать в алгоритмах, что является ориентацией алгоритмической системы на конкретного исполнителя;
4) языком описания алгоритмов - языком исполнителя; язык, на котором описан алгоритм, должен быть понятен и не должен включать в свой состав указания на невозможные для исполнителя действия, а также обращения к входным или выходным объектам, не принадлежащих к множеству входных или выходных объектов данной алгоритмической системы.
Алгоритмизация
Алгоритмизация - процесс разработки и описания алгоритма решения какой-либо задачи.
Процесс разработки конкретного алгоритма, в соответствии с определением самого понятия «алгоритм», заключается в последовательном выполнении следующих пунктов:
разложение всего вычислительного процесса на отдельные шаги - возможные составные части алгоритма, что определяется внутренней логикой самого процесса и системой команд исполнителя.
установление взаимосвязей между отдельными шагами алгоритма и порядка их следования, приводящего от известных исходных данных к искомому результату.
полное и точное описание содержания каждого шага алгоритма на языке выбранной алгоритмической системы.
проверка составленного алгоритма на предмет: действительно ли он реализует выбранный метод и приводит к искомому результату.
В результате проверки могут быть обнаружены ошибки и неточности, что вызывает необходимость доработки и коррекции алгоритма - возвращение к одному из предыдущих пунктов. Во многих случаях разработка алгоритма включает в себя многократно повторяющуюся процедуру его анализа и коррекции.
Процедура анализа и коррекции алгоритма производится не только с целью устранения ошибок, но и с цель улучшения, т.е. оптимизации алгоритма. При определенном методе решения задачи оптимизация проводится с целью сокращению алгоритмических действий и упрощения, по возможности, самих этих действий. При этом алгоритм должен оставаться «эквивалентным» исходному. Будем называть два алгоритма эквивалентными, если:
1) множество допустимых исходных данных одного из них является множеством допустимых исходных данных и другого; из применимости одного алгоритма к каким-либо исходным данным следует применимость и другого алгоритма к этим данным;
2) применение этих алгоритмов к одним и тем же исходным данным дает одинаковые результаты.
Средства записи алгоритмов
Словесная запись алгоритмов
Самой распространенной формой представления алгоритмов, адресуемых человеку, является обычная словесная запись. В этой форме могут быть выражены любые алгоритмы.
Например, надо вычислить У = (а + в)/с и вывести результат.
В словесной форме алгоритм будет выглядеть так:
1. Ввести значение а;
2. Ввести значение в;
3. Ввести значение с;
4. Сложить а и в;
5. Результат п.4 поделить на с;
6. Результат п.5 присвоить переменной У;
7. Вывести значение У.
Можно записывать алгоритмы с помощью схем.
Схемы алгоритмов (Раздать таблицу с блоками)
Схема алгоритма – это графический способ его представления с элементами словесной записи. Каждое предписание алгоритма изображается с помощью плоской геометрической фигуры – блока. Отсюда название: блок-схема
линейный разветвляющийся цикл с
предусловием
Задачи, которые приходится решать лежат в диапазоне от очень простой до сверх сложной. Просто вычислить какие-нибудь формулы и вывести результаты – это линейный алгоритм. Если необходимо вычислять по разным формулам в зависимости от какого-нибудь условия, это – разветвляющийся алгоритм. Если необходимо несколько раз вычислять по одним и тем же формулам но с разными данным, то это циклический алгоритм.
Эти алгоритмы имеют типовые структуры и выглядят так: РИС.1.7
Структурограммы. Этот способ изображения алгоритмов представляет собой попытку воплощения требований структурного программирования в схемах алгоритмов. Здесь следует упомянуть о требованиях структурного программирования. Структурное программирование – это программирование, в основу которого положен принцип теоремы структурирования, которая гласит: каждый алгоритм любой сложности может быть представлен в виде набора из трех типовых базовых структур ( линейная, ветвление и цикл), имеющих один вход и один выход. Поэтому нежелательно использовать операторы безусловного перехода (типа GO TO ), так как может появиться дополнительный выход ( или вход) в базовой структуре, а это противоречит принципу структурирования. Примером языка высокого уровня для структурного программирования может служить Паскаль.
Для изображения алгоритмов в виде структурограмм используются следующие блоки:
1. Блок обработки (вычислений).
А = В + С
К = Р - М
А = В + С
3. Блок решения – для обозначения структуры разветвления. Условие располагается в верхнем треугольнике, варианты решения – по сторонам треугольника, а процессы обработки – прямоугольниками. Если блок решения является сокращенным (отсутствует одна из ветвей), то структурограмма видоизменяется соответствующим образом.
Логическое выражение
Действие 1
4. Блок варианта. Эта структура – расширение блока решения. Те варианты выхода из этого блока, которые можно сформулировать точно, располагаются слева. Остальные объединяются в один, называемый выходом по несоблюдению условий и располагаются справа.
5 Блок цикла с предусловием и цикл с параметром.
Условием
может быть логическое выражение в цикле
с предусловием или указывается количество
повторений цикла в цикле с параметром.
6. Блок цикла с постусловием.
Условие
- логическое выражение.
Если оно ложно, то тело цикла выполняется, как только логическое выражение станет истинным, происходит выход из цикла.
Лекция11. 27. Типовые алгоритмы.