Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОС информатика2.docx
Скачиваний:
15
Добавлен:
07.07.2019
Размер:
130.5 Кб
Скачать
  1. Алгоритм(ал) и его св-ва. Способы описания алг-мов. Базовые стр-ры алг-мов. Осн этапы построения алг-ма. Структурный подход при конструировании алг-мов.

АЛ–организованная послед-ть действий, кот ч/з конечное число шагов приводит к искомому результату.

Алг-м, в кот. все действия выполняются одно за другим независимо от условий, называется линейным. Если в зав-ти от условий выполняется определ. послед-ть действий, то - алгоритм с ветвлением. Алгоритм с циклом, если одна и та же посл-ть действий совершается неск раз, при опред. условиях.

Точное опр. понятия алг. было разработано в мат логике в 30-40х гг.XXв. Примеры этих понятий: машина Тьюринга, нормальный алгоритм Маркова, рекурсивные функции. На языке каждой матем теории можно дать опр. алг., которые эквивал в некотором смысле.

Свойства: Дискретность – выполн команд по порядку, каждая отдельно от других; алг распад на отдельн шаги; Понятность – команды понятны исполнителю; Результативность – есть конец => реш. задачи. Не учитыв. затрат врем. и ресурсов.; Конечность – через конечн. число шагов рез-т; Массовость – для целого класса задач. исх. данные могут быть различн.; Определенность – четкие и однозначные для любого исполнителя команды(устав в армии);

Спо-бы описания(задания)алг: Словесный.- исполн. чел, запись команд не формализ., кажд. ком. нумеруется (НОД(а, в));с пом. псевдокодов – сист. обознач. и правила для записи алг.; Графич: блок-схемы, структурограммы, граф-схемы;с пом яз. программир.-понятен. машине, точная запись; Таблицы решений. (Базовые структуры)

Блок-схема – это графическое изображение алгоритма в виде плоских геометрических фигур (блоков), соединенных линиями Блоки: Информационные – параллелогр-м:ввод,вывод,вход. и вых. по 1-ой стрелке. Функционал. – прямоугольн., в кот. запис. вычислит. операц., вход. и вых. по 1-ой стрелке. Условие – ромб, в кот. условия. Вход. 1 стрелка и вых. 2. Начало и Конец-овал, блок Слияния-окружность:мож. вход. неск., а вых. 1 стрелка. Все, кроме Нач. и Конец нумер-ся. Соединенные блоки = базовые структуры:Последоват-ть = информац.+функционал. блоки. Такая бл-сх – линейная; Разветвление обязат. содерж. условие: полное, неполное (нет действий по стрелке «нет»); Повторение (цикл)= условие + повторяющ. дейст.(тело).: с предусловием (Ц. Пока), с постусловием (Ц. До).

Основные этапы построен. алгоритма.

Алгоритмизация – описательная функция процесса реш. задачи путем составл. и обоснов. алгоритма.

Этапы алгоритмизации:.

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

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

3. Представление. Известны различные способы представления алгоритмов, которые отличаются один от другого своей выразительностью, наглядностью, степенью детализации алгоритма (схемы, таблицы решений, блок-схемы, учебные алгоритмические языки).

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

Напр., пусть необх. предст. несократ. дробь в виде суммы несократим. дробей. При обоснов. алг-ма нужно д-ть, что такое представл. возможно и конечно. Или пусть необх. реш. уравн. с пом. мет. итеррац. При этом док-ся, что проц. итер. буд. сход. Предусмотреть, чтобы в проц. реш. не возник. делен. на 0, вычисл. корня из отриц. числа Структурный подход при конструиров алгоритмов

Разработка сложных алг-мов и соотв им программ становится неуправляемой. Снизилась эффект, надежность, усложнилось тестирование => увелич время и стоимость прогр продукта. Лучшие программисты XX в Дейкстра и Вирт созд структ правила разраб программ - «методология структурир программирования». Осн стандартные структуры прграм-ния:1.алгоритм делим на независимые части – модули;2.модуль имеет одну входную и одну выходную точки;3.модуль – независимый блок, физически и логически отделен от др блоков;4.модуль начинается с комментария(назначение его, его перем и модулей, его вызывающих и вызываемых из него);5.в модуле – только базовые управляющие структуры (следование, ветвление, повтор), и вход и выход;6.Вложенность условн операторов не более 3 уровней.