Понятие алгоритма. Определения

Содержание

Слайд 2

Определения Алгоритм - это четкое описание последовательности действий, которые необходимо выполнить

Определения

Алгоритм - это четкое описание последовательности действий, которые необходимо выполнить для

решения поставленной задачи
Программа - это алгоритм, записанный на языке программирования
Языком программирования называется специальный язык, понятный для компьютера (например, VBA)
Программирование - это процесс создания, отладки и тестирования программ
Создание любой программы начинается с разработки алгоритма. Именно четкое описание последовательности действий позволяет мысленно представить будущую программу. Построив алгоритм, программист мыслит четко, последовательно, однозначно - так, как и будет впоследствии мыслить компьютер

Лекция 4

Слайд 3

Свойства алгоритма Дискретность - алгоритм должен быть представлен как последовательное выполнение

Свойства алгоритма

Дискретность - алгоритм должен быть представлен как последовательное выполнение простых

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

Лекция 4

Слайд 4

Способы записи алгоритма Формальный – словесная запись алгоритма на естественном языке

Способы записи алгоритма

Формальный – словесная запись алгоритма на естественном языке
Графический -

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

Лекция 4

Слайд 5

Блок-схемы алгоритмы Лекция 4 Блоки алгоритма 1, 2, 3 выполняются именно

Блок-схемы алгоритмы

Лекция 4

Блоки алгоритма 1, 2, 3 выполняются именно в такой

последовательности, после чего алгоритм достигает цели и заканчивается
Слайд 6

Этапы создания программы Постановка задачи - составление точного и понятного словесного

Этапы создания программы

Постановка задачи - составление точного и понятного словесного описания

того, как должна работать будущая программа, что должен делать пользователь в процессе ее работы
Разработка интерфейса (интерфейс - способ общения) - создание экранной формы (окна программы)
Составление алгоритма
Программирование - создание программного кода на языке программирования
Отладка программы - устранение ошибок
Тестирование программы - проверка правильности ее работы
Создание документации, помощи

Лекция 4

Слайд 7

Практическое задание Составьте и опишите словесно следующие алгоритмы: Приготовление чая Переход

Практическое задание

Составьте и опишите словесно следующие алгоритмы:
Приготовление чая
Переход улицы по светофору
Окраска

забора
Опишите составленные алгоритмы с помощью блок-схемы

Лекция 4

Слайд 8

Основные типы алгоритмов Основные типы: Линейные алгоритмы Разветвляющиеся алгоритмы Циклические алгоритмы

Основные типы алгоритмов

Основные типы:
Линейные алгоритмы
Разветвляющиеся алгоритмы
Циклические алгоритмы
Дополнительные типы:
Алгоритмы работы с массивами
Алгоритмы

работы со строками
Алгоритмы с использованием процедур и функций

Лекция 4

Слайд 9

Программирование линейных алгоритмов Линейным называется алгоритм, в котором результат получается путем

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

Линейным называется алгоритм, в котором результат получается путем однократного

выполнения заданной последовательности действий при любых значениях исходных данных. Операторы программы выполняются последовательно, один за другим, в соответствии с их расположением в программе
Пример: Определить расстояние на плоскости между двумя точками с заданными координатами M1(x1,y1) и M2(x2,y2)

Лекция 4


Void main()
{
Double x1, y1, x2, y2, d;
x1 = Double.Parse(Console.ReadLine());
y1 = Double.Parse(Console.ReadLine());
x2 = Double.Parse(Console.ReadLine());
y2 = Double.Parse(Console.ReadLine());
d = Math.Sqrt((x2 - x1)*(x2-x1) + (y2 - y1)*(y2-y1));
Console.WriteLine(“d=“+d);
}

Слайд 10

Задачи на использование линейных алгоритмов 1) Дана длина ребра куба. Найти

Задачи на использование линейных алгоритмов

1) Дана длина ребра куба. Найти объем

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

Лекция 4

Слайд 11

Программирование разветвляющихся алгоритмов Алгоритм называется разветвляющимся, если он содержит несколько ветвей,

Программирование разветвляющихся алгоритмов

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

друг от друга содержанием вычислений. Выход вычислительного процесса на ту или иную ветвь алгоритма определяется исходными данными задачи
Пример: Дано действительное а. Для функций f(a),график которой представлен на рисунке, вычислить f(a)

Лекция 4

Void main()
{
Double a,f;
a = Double.Parse(Console.ReadLine());
If (a < -1) f = -a – 1;
Else If (a >= -1 && a < 0) f = a – 1;
Else If (a >= 0 && a < 1) f = -a + 1;
Else f = a + 1;
Console.WriteLine(“f=“+f);
}

Слайд 12

Лекция 4 Void main() { Double a,f; a = Double.Parse(Console.ReadLine()); If

Лекция 4

Void main()
{
Double a,f;
a = Double.Parse(Console.ReadLine());
If (a < -1)

f = -a – 1;
Else If (a >= -1 && a < 0) f = a – 1;
Else If (a >= 0 && a < 1) f = -a + 1;
Else f = a + 1;
Console.WriteLine(“f=“+f);
}
Слайд 13

Задачи на использование разветвляющихся алгоритмов 1) Даны действительные положительные числа x,

Задачи на использование разветвляющихся алгоритмов

1) Даны действительные положительные числа x, y,

z. Выяснить, существует ли треугольник с длинами сторон x, y, z
2) Определить, какая из двух точек - M1(x1,y1) или M2(x2,y2) - расположена ближе к началу координат. Вывести на экран дисплея координаты этой точки
3) Определить, какая из двух фигур (круг или квадрат) имеет большую площадь. Известно, что сторона квадрата равна а, радиус круга r. Вывести на экран название и значение площади большей фигуры
4) Определить, попадает ли точка M(x,y) в круг радиусом r с центром в точке (x0,y0)

Лекция 4

Слайд 14

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

Программирование циклических алгоритмов

Алгоритм называется циклическим, если он содержит многократное выполнение одних

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

Лекция 4

WHILE <условие>
Оператор;

DO
Оператор
WHILE <условие>;

For (i = N1;i<=N2;i++)
Оператор;

Слайд 15

Пример циклического алгоритма Пример: Дано натуральное n. Вычислить: Лекция 4 Void

Пример циклического алгоритма

Пример: Дано натуральное n. Вычислить:

Лекция 4

Void main()
{
Int i,n;

Double s;
n = Int32.Parse(Console.ReadLine());
for(i=1,s=0;i<=n;i++)
s+= 1 + 1.0 / (i * i);
Console.WriteLine(“s=“+s);
}