2 Методы представления алгоритмов.pptx
- Количество слайдов: 41
Методы представления алгоритмов.
Способы записи алгоритмов • Словесный – на естественном языке; • На языке блок – схем; • На языке программирования. Блок-схема – это графическое изображение алгоритма в виде определенным образом связанных между собой нескольких типов блоков. Язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ.
Блок- схемы алгоритмов.
Основные алгоритмические конструкции. • Базовые структуры алгоритмов – это определенный набор блоков и стандартных способов их соединения для выполнения типичных последовательностей действий. К основным структурам относятся: • линейные • разветвляющиеся • циклические.
Линейный алгоритм – это алгоритм, в котором команды выполняются последовательно одна за другой.
Запись линейного алгоритма в виде блок-схемы: начало действие 1 … действие n конец
Разветвляющийся алгоритм – это алгоритм, в котором та или иная серия команд выполняется в зависимости от истинности условия.
Ветвление Полное если <условие> то <серия команд 1> иначе <серия команд 2> Неполное если <условие> то <серия команд 1>
Запись полного ветвления в виде блок-схемы: да серия команд 1 условие нет серия команд 2
Запись неполного ветвления в виде блок-схемы: да серия команд 1 условие нет
Определение: Условие – это высказывание, которое может быть либо истинным, либо ложным. Условия простые сложные
Простое условие Включает в себя одно предложение; два числа, две переменных или два арифметических выражения, которые сравниваются между собой Например: Идет дождь; 5>4; x*y=3+8.
Сложное условие Последовательность простых условий, объединенных между собой знаками логических операций И (AND), ИЛИ (OR), нет(not). Например: (10>0) AND (8>9); (x=10) OR (x>=0).
Задание: Построить блок-схему разветвляющегося алгоритма, используя сложное условие. Принадлежит ли точка x отрезку [a, b]?
Задания: n Лежит ли x вне отрезка [a, b]; n Принадлежит ли x отрезку [a, b] или отрезку [c, d]; n Является ли k трехзначным числом; n Какое из чисел a, b, c является меньшим; n Есть ли среди чисел a, b, c взаимно противоположные; n Равны ли треугольники со сторонами a 1, b 1, c 1 и a 2, b 2, c 2; n Является ли четырехугольник со сторонами a, b, c и d ромбом.
Ответы: 1. (x < a) or(x > b); 2. ((x>=a) and (x<=b)) or ((x>=c) and (x<=d)); 3. (k > 99) and (k < 1000); 4. (c < a) and (b > a); 5. (a=-b) or (a=-c) or (b=-c); 6. (a 1=a 2) and (b 1=b 2) and (c 1=c 2); 7. (a=b) and (c=d) and (b=c).
Определение: Выбор - это такая алгоритмическая структура, в которой выполняется одна из нескольких последовательностей команд при истинности соответствующего условия.
Полный выбор при условие 1: действия 1 при условие 2: действия 2 . . . при условие N: действия N иначе действия N+1
Неполный выбор при условие 1: действия 1 при условие 2: действия 2 . . . при условие N: действия N
Запись полного выбора в виде блок-схемы: да серия команд 1 условие 1 нет … условие n да нет серия команд n+1 серия команд n
Запись неполного выбора в виде блок-схемы: условие 1 да серия команд 1 нет условие 2 да серия команд 2 нет … условие n нет да серия команд n
Определение: Цикл - это такая алгоритмическая структура, в которой серия команд (тело цикла) выполняется многократно.
Цикл со счетчиком предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне. Словесный способ записи Для x от A до B тело цикла
Запись цикла со счетчиком (параметром) в виде блок-схемы: счетчик да тело цикла нет
Цикл с предусловием пока истинно условие, предписывает выполнять тело цикла. Словесный способ записи: пока условие тело цикла
Запись цикла с предусловием в виде блок-схемы: условие да тело цикла нет
Цикл с постусловием предписывает выполнять тело цикла до тех пор, пока не выполнится условие выхода из цикла. Словесный способ записи тело цикла до условие
Запись цикла с постусловием в виде блок-схемы: тело цикла нет условие да
Задачи ГИА № 1. На рисунке представлена блок-схема алгоритма. Какое значение будет иметь переменная Х после выполнения алгоритма при начальном значении переменных 1)Y=5, Z=-3; Начало 2)Y=3, Z= 4. НЕТ Y: =Y+Z Ввод Y, Z Y<5 Y: =Y+Z Ответ: Y 1= -1; Y 2= 3. Конец ДА Y: =Y-Z
Задачи ГИА № 3. К какому результату приведет исполнение представленного в виде блок-схемы алгоритма? Ответ: I= 12 ДА Сколько раз выполнится вывод текста в алгоритме? Вывод: Ответ: 6 раз Изменим условие: I: =I*2 Сколько раз выполнится вывод текста в алгоритме? «ПРИВЕТ!» » I: =I+2 I: =I*2 Начало I: =0 I<=10 НЕТ Вывод: I Конец Ответ: бесконечно. Произойдет "зацикливание" алгоритма, т. е. не будет выполняться основное свойство алгоритма — результативность.
Задачи • № 3. Правило деления обыкновенных дробей в алгебраической форме выглядит таким образом: а/b : c/d = (ad)/(bc)=m/n. Построить блок-схему алгоритма деления дробей для ЭВМ. • № 4. Составить блок-схему алгоритма, определяющего число точек пересечения прямой y=kx+b с окружностью • № 5. Постройте блок-схему поиска наибольшего из трех чисел A, B, C.
• № 6. Составьте блок-схему алгоритма исследования квадратного уравнения ax²+bx+c=0 (a≠ 0) • № 7. Рассмотрим циклические алгоритмы «с параметром» , «пока» , «до» на примере алгоритма вычисления факториала: F=n! • № 8. Составьте блок-схему алгоритма поиска НОД двух чисел, используя Алгоритм Евклида.
Рекурсивный метод – алгоритм Евклида В соответствии с этим методом НОД(m, n) вычисляется по следующему правилу: НОД(m-n, n), если m>n, НОД(m, n) = НОД(m, n-m), если n>m, m, если m=n. т. е. если d является НОД(m, n), то это же число d будет являться НОД меньшего числа из этой пары и их разности.
Самостоятельная работа Определите значение переменных X и Y после выполнения фрагмента алгоритма. I вариант II вариант Х=13; Y=20 Х=30; Y=20
2 Методы представления алгоритмов.pptx