Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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

Поиск

Алгоритм и его свойства. Правила построения алгоритма.

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

Свойства:

1)Понятность-имея алгоритм и произвольный вариант исходных данных исполнитель должен знать, как надо действовать для выполнения этого алгоритма.

2) Дискретность (прерывность, раздельность) – алгоритм должен представлять процесс решения задачи как последовательное выполнения простых шагов.

3) Определенность – каждое правило алгоритма должно быть четким, однозначным и не оставлять места для произвола.

4) Релевантность (конечность)- состоит в том, что за конечное число шагов алгоритм либо должен приводить к решению задачи, либо после конечного числа шагов останавливаться из-за невозможности получить решение.

5) Массовость – означает, что алгоритм решения задачи разрабатывается в общем виде, т.е он должен быть применим для некоторого класса задач, различающихся лишь исходными данными.

Правила построение:

1)При построении алгоритма прежде всего надо задать множество данных, с которыми будет работать алгоритм. Алгоритм приступает к работе некоторым набором данных, которые называются входными и в результате своей работы выдают выходные данные. Не имея объявленных(формализованных) данных, мы не можем построить алгоритм.

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

3)Алгоритм должен быть дискретным. Он строится из отдельных шагов (команд, действий, операций). Множество шагов, из которых составлен алгоритм, должно быть конечным.

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

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

Формы записи алгоритма.

Алгоритм может быть представлен в различных формах. На практике наиболее распространённые формы. На практике наиболее распространенные следующие формы записи алгоритма:

1) Словесная (Запись на естественном языке)

2) Графическая (изображение графических символов)

3) Псевдокоды

1)Словесная форма представляет собой описание последовательных этапов обработки данных. Алгоритм в произвольном изложении на естественном языке. Недостатки:

А) Страдает многословностью записей

Б) Допускает неоднозначность толкование отдельных предписаний

В) Строго не формализуем

2) Графическая форма записи – наиболее компактный и понятный по сравнению со словесным. При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий. Такое графическое представление называется блок схемой.

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

4)Программная форма записи алгоритма представляет собой написанный на языке программирования текст программы.

Языки программирования.

1. Машинный язык. ЭВМ - является формальным исполнителем алгоритмов, поэтому для решения какой-либо задачи с помощью ЭВМ ей необходимо задать алгоритм. Поскольку этот алгоритм предварительно нужно ввести в память машины, затем он должен быть воспринят и исполнен, то этот алгоритм должен быть записан(задан) на спец. языке, понятном машине. Так как машинные языки непосредственно управляют работой устройств, представляющий самый низший уровень детализации ЭВМ (регистр, аккумулятор, ячейки памяти), то их принято называть языками низшего уровня. Машинные языки имеют предопределенный набор команд, который зависит от типа процессора.

Недостатки:

1)Разные типы ЭВМ могут иметь разные языки. Так что программа, написанная на языке одной ЭВМ может быть непонятна другой ЭВМ, поэтому машинный язык является аппаратно-зависимым.

2)Необходимость аппаратной реализации алгоритма, подлежащего выполнению особенности элементной базы ЭВМ, приводят к тому, что язык машины неудобен для человека.

3) Каждая ЭВМ может непосредственно выполнять весьма ограниченный набор операций, зависящий от ее архитектуры.

4) Ограниченные возможности аппаратуры приводят к тому, что каждая законченная фраза на машинном языке может содержать в себе весьма ограниченный набор информации.

5) Каждая машинная команда задается цифровым кодом, а ее операнды данные) объявляются в виде адреса, т.е номер от той ячейки памяти, которая отведена для хранения данного операнда.

2. Язык Ассемблер

Язык Ассемблер – это символьная форма записи машинного языка; его использование существенно упрощает написание машинных программ, т.к каждая из команд ассемблера выражается мнемокодом и набором операндов. Мнемокод- Это служебное слово, записанное в символьной форме и указывающее какую необходимо выполнить операцию над операндами. В ассемблере не используются цифровые коды операций. Операции указываются только своими символьными названиями.

Достоинства:

1) Доступ ко всем ресурсам компьютера

2) Короткий и эффективный программный код

3) Программы, как правило, быстрые

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

3. Языки программирования высокого уровня

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

Основные понятия программного обеспечения.

Программный продукт.

23.Обобщенная структура экспертной системы. Основные понятия и определения.



Поделиться:


Последнее изменение этой страницы: 2016-08-16; просмотров: 573; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.139.72.210 (0.008 с.)