Алгоритм: различия между версиями

Материал из Поле цифровой дидактики
 
 
(не показано 10 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{Понятие
{{Понятие
|Description=Алгоритм: описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
|Description=Алгоритм — конечная совокупность точно заданных правил решения некоторого класса задач или набор инструкций, описывающих порядок действий исполнителя для решения определённой задачи. В старой трактовке вместо слова «порядок» использовалось слово «последовательность», но по мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Независимые инструкции могут выполняться в произвольном порядке, параллельно, если это позволяют используемые исполнители.
|Field_of_knowledge=Информатика
 
Aлгоритм (algorithm) — это любая корректно определенная вычислительная процедура, на вход (input) которой подается некоторая величина или набор величин, и результатом выполнения которой является выходная (output) величина или набор значений. Таким образом, алгоритм представляет собой последовательность вычислительных шагов, преобразующих входные величины в выходные. <br clear=all /> http://digida.mgpu.ru/images/diagrams/Diagrams_bed5db8cee4f071de30328edd77489b1.png
|Field_of_knowledge=Информатика, Робототехника, Образование
|similar_concepts=Исполнитель, Процедура, Функция
|Environment=Python, Snap!
|FieldActivity=Empowered Learner, Computational Thinker
|FieldActivity=Empowered Learner, Computational Thinker
|Возрастная категория=8
|Возрастная категория=8
|Examples=Сортировка
|Examples=Сортировка
|similar_concepts=Исполнитель
}}
}}
Понятие [[алгоритм]]а является одним из фундаментальных понятий для [[вычислительное мышление|вычислительного мышления]]
Понятие [[алгоритм]]а является одним из фундаментальных понятий для [[вычислительное мышление|вычислительного мышления]]
; Теория
; Теория
: Определение алгоритма. Запись алгоритма на естественном языке. Запись алгоритма на псевдо-коде и в коде языка Scratch.
: Определение алгоритма. Запись алгоритма на естественном языке. Запись алгоритма на псевдо-коде и в коде языка [[Scratch]].
; Практика
; Практика
: В чём  преимущества и недостатки записи кода при помощи визуальных блоков? Как можно преодолеть недостатки? Представьте в коде языка Scratch стратегию мальчика-с-пальчика, который хочет в лесу найти дорогу домой.
: В чём  преимущества и недостатки записи кода при помощи визуальных блоков? Как можно преодолеть недостатки? Представьте в коде языка [[Scratch]] стратегию мальчика-с-пальчика, который хочет в лесу найти дорогу домой.
 
 
== Примеры записи алгоритмов ==
 
=== Визуальное представление [[блок-схема]] ===
 
{{#mermaid:flowchart LR
  id1[Получаю \nслово]
id2{Есть в \nкрасной?}
id3{Есть в \nжёлтой?}
id4{Есть в \nзелёной?}
id5[Добавляю \nкрест]
id6[Добавляю \nзвезду]
id7[Добавляю \nмесяц]
id8[Возвращаю \nтекст]
id1 --> id2
id2 --> |Нет| id3
id2 --> |Да| id5
id5 --> id3
id3 --> |Нет| id4
id3 --> |Да| id6
id6 --> id4
id4 --> |Нет| id8
id4 --> |Да| id7
id7 --> id8
 
}}
 
=== Блоки [[Snap!]] ===
 
Линейный поиск <br clear=all />
[[Файл:Linear Search+ script pic.png|400px]]

Текущая версия на 20:45, 9 января 2023


Описание Алгоритм — конечная совокупность точно заданных правил решения некоторого класса задач или набор инструкций, описывающих порядок действий исполнителя для решения определённой задачи. В старой трактовке вместо слова «порядок» использовалось слово «последовательность», но по мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». Независимые инструкции могут выполняться в произвольном порядке, параллельно, если это позволяют используемые исполнители.

Aлгоритм (algorithm) — это любая корректно определенная вычислительная процедура, на вход (input) которой подается некоторая величина или набор величин, и результатом выполнения которой является выходная (output) величина или набор значений. Таким образом, алгоритм представляет собой последовательность вычислительных шагов, преобразующих входные величины в выходные.
Diagrams_bed5db8cee4f071de30328edd77489b1.png

Область знаний Информатика, Робототехника, Образование
Авторы
Поясняющее видео
Близкие понятия Исполнитель, Процедура, Функция
Среды и средства для освоения понятия Python, Snap!

Понятие алгоритма является одним из фундаментальных понятий для вычислительного мышления

Теория
Определение алгоритма. Запись алгоритма на естественном языке. Запись алгоритма на псевдо-коде и в коде языка Scratch.
Практика
В чём преимущества и недостатки записи кода при помощи визуальных блоков? Как можно преодолеть недостатки? Представьте в коде языка Scratch стратегию мальчика-с-пальчика, который хочет в лесу найти дорогу домой.


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

Визуальное представление блок-схема

Блоки Snap!

Линейный поиск
Linear Search+ script pic.png