АЛГОРИТМЫ Информатика 9 кл
Алгоритм это конечная последовательность действий, описывающая процесс преобразования объекта, записанная с помощью команд algorithmi – (лат) аль-Хорезми - математик
Свойства алгоритма 1. Дискретность 2. Результативность 3. Массовость 4. Детерминированность 5. Понятность 6. Формальность
Дискретность разделение на отдельные команды
Результативность получение результата за конечное число шагов
Массовость возможность применения к различным исходным данным
Детерминированность каждая команда определяет однозначное действие исполнителя
Понятность команды алгоритма должны входить в систему команд исполнителя
Формальность не нужно вникать в содержание
Пример алгоритма 1. Задумай любое число 2. Прибавь к нему Вычти задуманное 4. Результат раздели на 3 Результат - 12
Способы представления 1. Последовательная запись 2. Блок-схема 3. Алгоритмический язык 4. Язык программирования
Последовательная запись 1. Задумай число 2. Умножь на 5 3. Раздели на задуманное число - пронумерованный список
Блок-схема НАЧАЛО Задумай число Умножь на 5 Раздели на задуманное КОНЕЦ - наглядный рисунок, на котором видна логика выполнения алгоритма
Алгоритмический язык алг число нач задумай число умножь на 5 раздели на задуманное число кон - запись алгоритмов на понятном для человека языке
Язык программирования program chislo; var a, b: integer; begin readln ('задумайте число, a); b:=a*5; b:=b/a; end. - запись алгоритмов на понятном для компьютера языке
Виды алгоритмов 1. Линейный алгоритм 2. Алгоритм с условием 3. Циклический алгоритм
Линейный алгоритм - это алгоритм, в котором команды выполняются последовательно одна за другой НАЧАЛО c:=a+b ввод a, b вывод с КОНЕЦ алг сумма нач ввод a, b c:=a+b вывод c кон
Задача 1 - Определи результат выполнения алгоритма по его блок схеме НАЧАЛО А:=А+1 В:=В/2 С:=A*B А=5, В=4 Вывод С КОНЕЦ Решение A:=5+1=6 B:=4/2=2 С:=6*2=12 Вывод 12
Задача 2 - Определи результат выполнения алгоритма по его записи Решение Z:=0+3=3 Z:=3-2=1 Z:=1*3=3 Z:=3/2=1,5 Вывод 1,5 алг число нач X=3 Y=2 Z:=Z+X Z:=Z-Y Z:=Z*X Z:=Z/Y вывод Z кон
Алгоритм с условием - это алгоритм, в котором в зависимости от условия выполняется одна или другая серия команд Условие Действие 1 Да Действие 2 Нет если условие то действие 1 иначе действие 2 кон если
Примеры 1. Деление чисел (правильное) НАЧАЛО ввод a, b вывод с КОНЕЦ b=0 Да c:=a/b Нет алг деление нач ввод а, b если b=0 то вывод «нельзя» иначе c := b вывод с кон если кон нельзя
Примеры 2. Большее число НАЧАЛО ввод a, b вывод с КОНЕЦ a>b c:=a Да c:=b Нет алг Большее число нач ввод а, b если a>b то c := a иначе c := b кон если вывод с кон
Задачи 1. Определи результат выполнения алгоритма по его блок схеме Решение 5>6 - нет a:=5*5=25 Вывод 25 НАЧАЛО а:=5 Вывод a КОНЕЦ a>6 a:=a/2 Да a:=a*a Нет
Задачи 2. Определи результат выполнения алгоритма по его записи при а) a=-4 и b=3 б) a=7 и b=6 Ответ Выводится большее из введенных чисел алг число нач ввод а, b если a>b то вывод a иначе вывод b кон если кон
Алгоритм с выбором - это алгоритм, в котором предусмотрен выбор более двух вариантов действий если условие 1 то действие 1 иначе если условие 2 то действие 2 иначе если условие 3 то действие 3 иначе действие 4 кон если
Пример 1. Оценка алг оценка нач ввод «введи оценку»; а если а=2 то вывод «неудовлетворительно» иначе если а=3 то вывод «удовлетворительно» иначе если а=4 то вывод «хорошо» иначе если а=5 то вывод «отлично» иначе вывод «такой оценки нет» кон если
Циклический алгоритм - это алгоритм, в котором некоторая серия команд выполняется несколько раз для счетчик=min до max шаг шаг нц действие кц Счетчик Тело цикла
Задача 1 - Определи результат выполнения алгоритма по его блок схеме Решение S:=10 k=3, 4, 5 нц S:=10-3=7 S:=7-4=3 S:=3-5=-2 кц Вывод S=-2 НАЧАЛО S:=10 Вывод S КОНЕЦ k=3 до 5 S:=S-k
Задача 2 - Определи результат выполнения алгоритма по его записи при: a=6 алг Результат нач ввод а для k=1 до a шаг 2 нц S := S +k кц вывод S кон Решение a=6 для k=1, 3, 5 нц S:=0+1=1 S:=1+3=4 S:=4+5=9 кц Вывод S=9
Задача 3 Написать алгоритм нахождения суммы последовательности чисел алг Сумма последовательности нач ввод а, b для k=a до b шаг 1 нц S := S +k кц вывод S кон