Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
INFA_33__33__33__33.docx
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
259.61 Кб
Скачать
  1. Виды алгоритма.

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

  • механические алгоритмы, иначе детерминированные;

  • гибкие алгоритмы, иначе вероятностные и эвристические.

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

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

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

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

    Различают четыре основных типа частных алгоритмов:

  • линейный алгоритм;

  • алгоритм с ветвлением;

  • циклический алгоритм;

  • вспомогательный, или подчиненный, алгоритм.

    Линейный алгоритм - набор инструкций, выполняемых последовательно во времени друг за другом.

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

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

    Вспомогательный, или подчиненный, алгоритм - алгоритм, ранее разработанный и целиком используемый при алгоритмизации конкретной задачи.

    На всех этапах подготовки к алгоритмизации задачи широко используется структурное представление алгоритма в виде блок-схем.

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

  1. Объектно-ориентированное программирование.

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

В центре ООП находится понятие объекта. Объект — это сущность, которой можно посылать сообщения, и которая может на них реагировать, используя свои данные. Данные объекта скрыты от остальной программы. Сокрытие данных называетсяинкапсуляцией.

Наличие инкапсуляции достаточно для объектности языка программирования, но ещё не означает его объектной ориентированности — для этого требуется наличие наследования.

Но даже наличие инкапсуляции и наследования не делает язык программирования в полной мере объектным с точки зрения ООП. Основные преимущества ООП проявляются только в том случае, когда в языке программирования реализован полиморфизм; то есть возможность объектов с одинаковой спецификацией иметь различную реализацию.

Язык Self, соблюдая многие исходные положения объектно-ориентированного программирования, ввёл альтернативное классам понятие прототипа, положив начало прототипному программированию, считающемуся подвидом объектного.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]