Алгоритмы и исполнители

Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
Перейти к: навигация, поиск
 
(не показаны 42 промежуточные версии 5 участников)
Строка 1: Строка 1:
 
    
 
    
Понятие [[Алгоритм|алгоритма]] известно в математике давно. Термин происходит от имени великого ученого мусульманского мира - узбека, жителя города Хорезм  [[Аль-Хорезми|Абу-Абдуллы-Мухаммеда ибн Мусы аль Маджуса аль Хорезми]] (787-850 гг.). Его труд "Китаб мухтасар аль джебр ва-л-мукабала" в XII веке был переведен на латынь и стал доступным для европейцев. В нем были изложены правила 4-х арифметических действий над числами в десятичной системе счисления и правила решения уравнений первой степени. Эти правила и были названы в [[Европа|Европе]] [[Алгоритм|АЛГОРИТМАМИ]].
+
Понятие [[Алгоритм|алгоритма]] известно в математике давно. Термин происходит от имени великого ученого мусульманского мира - узбека, жителя города Хорезм  [[Аль-Хорезми|Абу-Абдуллы-Мухаммеда ибн Мусы аль Маджуса аль Хорезми]] (787-850 гг.). Его труд "Китаб мухтасар аль джебр ва-л-мукабала" в XII веке был переведен на латынь и стал доступным для европейцев. В нем были изложены правила 4-х арифметических действий над числами в десятичной системе счисления и правила решения уравнений первой степени. Эти правила и были названы в [[Европа|Европе]] '''[[Алгоритм|алгоритмами]]'''.
 +
 
 +
[[Файл:Мухаммед ибн Муса аль-Хорезми .jpg|Мухаммед ибн Муса аль-Хорезми|link=Аль-Хорезми]]
  
 
  '''[[Алгоритм|Алгоритм]]''' - это понятное и точное предписание исполнителю выполнить  
 
  '''[[Алгоритм|Алгоритм]]''' - это понятное и точное предписание исполнителю выполнить  
 
  конечную последовательность команд,приводящую от исходных данных к искомому результату.
 
  конечную последовательность команд,приводящую от исходных данных к искомому результату.
 
   
 
   
 
 
  '''Свойства [[Алгоритм|алгоритмов]]:'''
 
  '''Свойства [[Алгоритм|алгоритмов]]:'''
  
 
   1. понятность
 
   1. понятность
 
   2. однозначность
 
   2. однозначность
   3. дискретность (пошаговость)
+
   3. дискретность(пошаговость)
   4. массовость (универсальность)
+
   4. массовость(универсальность)
 
   5. результативность
 
   5. результативность
 
   6. конечность
 
   6. конечность
 
   7. безошибочность
 
   7. безошибочность
 +
  8. детерминированность(определенноить)
 +
  
 
Очевидно, что предписание "Пойди туда, не знаю куда, принеси то, не знаю что" [[Алгоритм|алгоритмом]] не является.
 
Очевидно, что предписание "Пойди туда, не знаю куда, принеси то, не знаю что" [[Алгоритм|алгоритмом]] не является.
  
В качестве исполнителя [[Алгоритм|алгоритмов]] в "докомпьютерную" эру подразумевался человек (в крайнем случае, животное - в цирке). Человек постоянно пользуется [[Алгоритм|алгоритмами]] при решении задач, не задумываясь над этим, машинально (автоматически). Наглядными примерами [[Алгоритм|алгоритмов]] являются различные инструкции, правила, рецепты. Открывая дверь ключом, никто не размышляет над тем, как это сделать. Но чтобы научить этому другого, придется составить [[Алгоритм|алгоритм]]. Например, так:
+
В качестве исполнителя [[Алгоритм|алгоритмов]] в "докомпьютерную" эру подразумевался человек (в крайнем случае, животное - в цирке). Человек постоянно пользуется [[Алгоритм|алгоритмами]] при решении задач, не задумываясь над этим, машинально (автоматически). Наглядными примерами [[Алгоритм|алгоритмов]] являются различные инструкции, правила, рецепты. Открывая дверь ключом, никто не размышляет над тем, как это сделать. Но чтобы научить этому другого, придется составить [[Алгоритм|алгоритм]].Например, так:
  
 
   1. Достать ключ.
 
   1. Достать ключ.
Строка 24: Строка 27:
 
   3. Повернуть ключ против часовой стрелки на 2 оборота.
 
   3. Повернуть ключ против часовой стрелки на 2 оборота.
 
   4. Вынуть ключ.  
 
   4. Вынуть ключ.  
 +
  
 
''' [[Формы представления алгоритма|Способы представления алгоритма]]:'''
 
''' [[Формы представления алгоритма|Способы представления алгоритма]]:'''
Строка 29: Строка 33:
 
   1. словесный;
 
   1. словесный;
 
   2. табличный;
 
   2. табличный;
   3. графический;
+
[[Файл:ТаблицаДавидДавтян.jpg|Таблица]]
 +
   3. графический, в виде [[Блок-схема|блок-схемы]];
 +
[[Файл:Блок-схемаДавидДавтян.jpg|Блок-схема|link=Блок-схема]]
 
   4. программа на алгоритмическом языке.
 
   4. программа на алгоритмическом языке.
 
+
[[Файл:программа на алгоритмическом языке.jpg|программа на алгоритмическом языке]]
 
  '''Программа''' - это [[Алгоритм|алгоритм]], записанный на языке исполнителя.
 
  '''Программа''' - это [[Алгоритм|алгоритм]], записанный на языке исполнителя.
 
 
Четвёртый способ – единственный «понятный» компьютеру как автоматическому исполнителю. Первые три служат для понимания решения задачи самим человеком.
 
Четвёртый способ – единственный «понятный» компьютеру как автоматическому исполнителю. Первые три служат для понимания решения задачи самим человеком.
  
В любом алгоритмическом языке (языке программирования) можно выделить четыре основные конструкции (виды алгоритмов):
+
В любом алгоритмическом языке ([[Программирование|языке программирования]]) можно выделить четыре основные конструкции (виды алгоритмов):
  
 
   1. [[Виды алгоритмов|линейный алгоритм]] (образование последовательности из нескольких команд);
 
   1. [[Виды алгоритмов|линейный алгоритм]] (образование последовательности из нескольких команд);
 
   2. [[Виды алгоритмов|алгоритм ветвления]] (выбор одной или нескольких команд);
 
   2. [[Виды алгоритмов|алгоритм ветвления]] (выбор одной или нескольких команд);
   3. [[Виды алгоритмов|циклический алгоритм]] (повторение одной или нескольких команд с заданным количеством повторов или в зависимости от некоторого условия);
+
   3. [[Виды алгоритмов|циклический алгоритм]] (повторение одной или нескольких команд  
   4. [[Виды алгоритмов|вспомогательный алгоритм]] (самостоятельный [[Алгоритм|алгоритм]], облегчающий реализацию модульного принципа составления программы).
+
с заданным количеством повторов или в зависимости от некоторого условия);
 +
   4. [[Виды алгоритмов|вспомогательный алгоритм]] (самостоятельный [[Алгоритм|алгоритм]],   облегчающий реализацию модульного принципа  
 +
составления программы).
 +
[[Категория: Понятие]]

Текущая версия на 14:54, 29 января 2011

Понятие алгоритма известно в математике давно. Термин происходит от имени великого ученого мусульманского мира - узбека, жителя города Хорезм Абу-Абдуллы-Мухаммеда ибн Мусы аль Маджуса аль Хорезми (787-850 гг.). Его труд "Китаб мухтасар аль джебр ва-л-мукабала" в XII веке был переведен на латынь и стал доступным для европейцев. В нем были изложены правила 4-х арифметических действий над числами в десятичной системе счисления и правила решения уравнений первой степени. Эти правила и были названы в Европе алгоритмами.

Мухаммед ибн Муса аль-Хорезми

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

Свойства алгоритмов:
  1. понятность
  2. однозначность
  3. дискретность(пошаговость)
  4. массовость(универсальность)
  5. результативность
  6. конечность
  7. безошибочность
  8. детерминированность(определенноить)


Очевидно, что предписание "Пойди туда, не знаю куда, принеси то, не знаю что" алгоритмом не является.

В качестве исполнителя алгоритмов в "докомпьютерную" эру подразумевался человек (в крайнем случае, животное - в цирке). Человек постоянно пользуется алгоритмами при решении задач, не задумываясь над этим, машинально (автоматически). Наглядными примерами алгоритмов являются различные инструкции, правила, рецепты. Открывая дверь ключом, никто не размышляет над тем, как это сделать. Но чтобы научить этому другого, придется составить алгоритм.Например, так:

  1. Достать ключ.
  2. Вставить ключ в замочную скважину.
  3. Повернуть ключ против часовой стрелки на 2 оборота.
  4. Вынуть ключ. 


Способы представления алгоритма:

  1. словесный;
  2. табличный;

Таблица

  3. графический, в виде блок-схемы;

Блок-схема

  4. программа на алгоритмическом языке.

программа на алгоритмическом языке

Программа - это алгоритм, записанный на языке исполнителя.

Четвёртый способ – единственный «понятный» компьютеру как автоматическому исполнителю. Первые три служат для понимания решения задачи самим человеком.

В любом алгоритмическом языке (языке программирования) можно выделить четыре основные конструкции (виды алгоритмов):

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