Четверг
24.09.2020
01:28
Вход на сайт
Поиск
Календарь
«  Сентябрь 2020  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
282930
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Сайт учителя информатики Черниковой Н.Б.
    Алгоритмизация -  1) этап решения задачи, состоящей в нахождении по формулировке задачи алгоритма ее решения. 2) Раздел информатики, изучающий методы, приемы построения алгоритмов и их свойства

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

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

    Единого «истинного» определения понятия «алгоритм» нет.

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

    Алгоритм должен обладать  следующими свойствами

    1. Дискретность. Разделение алгоритма на последовательность(порядок)  простых шагов.

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

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

    4. Детерминированность (однозначность). Любое действие алгоритма должно быть четким и не подразумевать вариантов

    5. Выполняемость и понятность. Алгоритм должен содержать команды команды, входящие в систему команд исполнителя и записанные на понятном исполнителю языке.

    Разработка алгоритма всегда осуществляется в две стадии:

    1. описание общей концепции, порядок действий для достижения конкретной цели

    2. в алгоритм вносятся изменения с учетом конкретного Исполнителя и среды, в которой он будет осуществляться.
    Примером Исполнителя может быть:
    • робот, производящий некие работы в космосе, согласно командам, поступающим с Земли;
    • станок с числовым программным управлением, который выполняет программу заложенную в его память;
    • собака, которая  должна выполнять команды хозяина;
    • солдат в армии, который обязан подчиняться приказам командира.
    Роботы, машины, компьютеры являются идеальными Исполнителями. Они выполняют команды не обсуждая. Идеальный исполнитель не обязан:
    • понимать цель и методы достижения цели;
    • пропускать или менять порядок действий;
    • искать какую- либо замену при невыполнении этих действий.
    В трудоёмких и опасных для здоровья производствах используются автоматические механизмы - роботы, управляемые компьютерами.
    Человек может ставить себя на место Исполнителя, например для проверки правильности алгоритма
    .

    Алгоритмический язык -формализованный язык для однозначной записи алгоритмов. Состоит из набора символов (алфавит), синтаксических правил и семантических определений. Является основой языков программирования.

    Алгоритм на алгоритмическом языке в общем виде записывается в форме:

    алг название алгоритма (аргументы и результаты)
       дано условия применимости алгоритма
       надо цель выполнения алгоритма
    нач описание промежуточных величин
    |  последовательность команд (тело алгоритма)
    Кон
     
     
    Пример вычисления суммы квадратов: 
     
    алг Сумма квадратов (арг цел n, рез цел S)
       дано | n > 0
       надо | S = 1*1 + 2*2 + 3*3 + … + n*n
    нач цел i
    |  ввод n; S:=0
    |  нц для i от 1 до n
    |  |  S := S + i * i
    |  кц
    |  вывод "S = ", S
    Кон
     
    Запись алгоритма с помощью блок схем
     
     
     

    Начало и конец алгоритма

     

    Ввод исходных данных, вывод результата

     

    Какое-либо действие или линейная последовательность команд.

     

    Объявление условий. В зависимости от выполнения или не выполнения данного  условия происходит последующие выполнение алгоритма

     

     
     
     Примеры алгоритмов