ALGORITHM
НАЧАЛЬНЫЙ
УРОВЕНЬ
3D
TECH
PROGRESS
CONTACT
2022
2023

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

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

Исполнитель — это человек, компьютер, автоматическое устройство и т. д. Исполнитель должен уметь выполнять все команды, составляющие алгоритм.

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

Запись алгоритма на формальном языке называется программой.

Характеристика исполнителя
1
Круг решаемых задач
Каждый исполнитель создается для решения определенного класса задач.
2
Среда исполнителя
Область, обстановка, условия, в которых действует исполнитель, принято называть средой данного исполнителя
3
Система команд исполнителя
Предписание о выполнении отдельного законченного действия исполнителя называется командой. Совокупность всех команд, которые могут быть выполнены некоторым исполнителем, образует СКИ - система команд исполнителя.
4
Система отказов исполнителя
Отказ "не понимаю" возникает тогда, когда исполнителю подается команда, не входящая в его СКИ.
5
Режим работы исполнителя
Для большинства исполнителей предусмотрены режимы непосредственного и программного управления. В первом случае, управляет человек удаленно, во втором случае, заранее написанная программа.
Задание

Приведите 3 примера исполнителей. Опишите их возможности, их основное назначение. Всегда ли человек может быть исполнителем?

Свойства алгоритма
1
Дискретность
Процесс решения задачи должен быть разбит на последовательность отдельных шагов-команд, которые выполняются одна за другой. Только после завершения одной команды начинается выполнение следующей.
2
Понятность
Алгоритм должен содержать только те команды, которые известны исполнителю.
3
Детерминированность
Каждый шаг и переход от шага к шагу должны быть точно определены, чтобы его мог выполнить любой другой человек или механическое устройство. У исполнителя нет возможности принимать самостоятельное решение (алгоритм исполняется формально).
4
Конечность
Обычно предполагают, что алгоритм заканчивает работу за конечное число шагов. Результат работы алгоритма также должен быть получен за конечное время. Можно расширить понятие алгоритма до понятия процесса, который по различным каналам получает данные, выводит данные и потенциально может не заканчивать свою работу.
5
Массовость
Алгоритм должен решать не одну частную задачу, а класс задач. Не имеет смысла строить алгоритм нахождения наибольшего общего делителя только для чисел 10 и 15.
Задание

Запишите 3 алгоритма, которые вы используете в своей жизни. Проверьте, что все свойства алгоритма выполняются.

ФОРМЫ ЗАПИСИ АЛГОРИТМОВ

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

Фигурки (блоки) блок-схемы

ОСНОВНЫЕ ВИДЫ АЛГОРИТМИЧЕСКИХ СТРУКТУР

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

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

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

ПРИМЕРЫ АЛГОРИТМОВ

Присваивание

Команда присваивания используется для изменения значений переменных.


<имя переменной> := <выражение>

Инициализация переменных

Величина – это объект, который имеет имя и значение определенного типа.

Константа – это постоянная величина, значение которой не изменяется в процессе работы программы. Значение константы определяет сам программист.

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

b := 4

a := -3

b := 7 - 2*a - b

a := b/3 - a

В от­ве­те ука­жи­те одно целое число — значение пе­ре­мен­ной a.

a := 100

b :=240

a := 3*a+20

b := a*2–b


В от­ве­те укажите одно целое число — зна­че­ние переменной b.

a := 100

b :=240

a := 3*a+20

b := a*2–b


В от­ве­те укажите одно целое число — зна­че­ние переменной b.

Программирования на PascalABC.NET

Общая структура программы:

begin

здесь будем писать программу

end.

Вывод данных

begin

var a := 5;

print(a);

end.

// 5

Вывод данных

begin

var a := 5;

print(a);

var a := 10;

print(a);

end.

// 5 10

Вывод данных

begin

var a := 5;

var b := 10;

print(a + b);

end.

// 15

Вывод данных

begin

var a := 5;

var b := 10;

print('Сумма a и b равна',a + b);

end.

// 15

Организация ввода

begin

var a := ReadInteger;

var b := ReadInteger;

print('Сумма a и b равна',a + b);

end.

Организация ввода и приглашение на ввод

begin

var a := ReadInteger('Введите а');

var b := ReadInteger('Введите b');

print('Сумма a и b равна',a + b);

end.

Калькулятор

begin

var a := ReadInteger('Введите а');

var b := ReadInteger('Введите b');

println('Сумма a и b равна',a + b);

println('Разность a и b равна',a - b);

println('Произведение a и b равна',a * b);

println('Частное a и b равна',a / b);

end.

Решение квадратного уравнения

begin

var a := ReadInteger;

var b := ReadInteger;

var c := ReadInteger;

var D := sqrt(b*b-4a*c);

var x_1 := (-b+D) / 2*a;

var x_2 := (-b-D) / 2*a;

println('Корни', x_1, x_2);

end.

This site was made on Tilda — a website builder that helps to create a website without any code
Create a website