Практическая работа №3 «Разработка алгоритмов разветвляющейся структуры методом блок-схем, псевдокодом»
Цель: Формирование умений и навыков по разработке алгоритмов разветвленной структуры.
Задачи:
1. научиться разрабатывать алгоритмы разветвленной структуры методом блок-схем
2. научиться разрабатывать алгоритмы разветвленной структуры методом псевдокода
Оснащение урока:
· Техническое: ПК, сканер, принтер, интерактивная доска
· Методическое: инструкционная карта, задание для самостоятельного выполнения
· Программное: Windows XP, Microsoft Office 2007.
Теоретические сведения:
Разветвляющимся называется такой алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса. Каждый подобный путь называется ветвью алгоритма.
Признаком разветвляющегося алгоритма является наличие операций проверки условия. Различают два вида условий - простые и составные. Простым условием (отношением) называется выражение, составленное из двух арифметических выражений или двух текстовых величин (иначе их еще называют операндами), связанных одним из знаков:
< - меньше, чем...
> - больше, чем...
<= - меньше, чем... или равно
>= - больше, чем... или равно
<> - не равно
Составное условие - объединение нескольких условий в одну группу.
Графический способ представления алгоритмов (метод блок-схемы). При таком представлении алгоритма, каждый этап отображается в виде геометрических фигур-блоков, форма которых зависит от выполняемой операции.
В блок-схемах разветвленные алгоритмы изображаются так, как показано на рисунке 6.
Рисунок 6 – конструкция разветвления (в полной и краткой формах)
Псевдоко́д - компактный язык описания алгоритмов, использующий ключевые слова императивных языков программирования, но опускающий несущественные подробности и специфический синтаксис. Псевдокод обычно опускает детали, несущественные для понимания алгоритма человеком. Такими несущественными деталями могут быть описания переменных, системно-зависимый код и подпрограммы. Главная цель использования псевдокода — обеспечить понимание алгоритма человеком, сделать описание более воспринимаемым, чем исходный код на языке программирования. Псевдокод широко используется в учебниках и научно-технических публикациях, а также на начальных стадиях разработки компьютерных программ.
Базовые элементы блок-схем и управляющие структуры псевдокода см. Приложение 1.
Ход работы
1. В рабочей тетрадке запишите тему, цель и задачи работы.
2. Приступите к выполнению упражнений.
3. Выполните задание в соответствии с вариантом.
4. Ответьте на контрольные вопросы.
5. Оформите отчет основные определения, рассуждения по решению задач, ответ; вывод по работе
6. Сделайте вывод по работе.
Упражнение 1 – Дано четырехзначное число. Проверить истинность высказывания: «Данное число читается одинаково слева направо и справа налево». Составить и записать алгоритм решения задачи в графическом и словесно-формульном виде.
Решение: Для того, чтобы число считалось одинаково слева направо и наоборот, должны совпадать первая и четвертая цифры, а также вторая и третья. Необходимо выделить цифры из числа для сравнения:
1562 = 1000 + 500 + 60 + 2 = 1· 1000 + 5 · 100 + 6 · 10 + 2
В общем виде: tcde = t · 1000 + c · 100 + d · 10 + e, тогда
t = tcde div 1000 – тысячи
с = tcde div 100 -10*t – сотые
d = tcde div 10 - 10*t – c*10 – десятые
е = tcde -1000*t –100*c – 10* d
Здесь div – деление нацело.
Вариант решения 1
1) Блок-схема алгоритма решения
Ложь |
НАЧАЛО |
КОНЕЦ |
ВВОД tcde |
t = e |
t = tcde div 1000 с = tcde div 100 -10*t d = tcde div 10 - 10*t – c*10 е = tcde -1000*t –100*c – 10* d |
c = d |
ВЫВОД «Число читается не одинаково» |
ВЫВОД «Число читается одинаково» |
Истина |
Истина |
Ложь |
2) Псевдокод алгоритма решения
Начало;
Ввод (tcde);
t = tcde div 1000
с = tcde div 100 -10*t
d = tcde div 10 - 10*t – c*10
е = tcde -1000*t –100*c – 10* d
Если t = e то
если c = d то вывод («число читается одинаково»);
иначе вывод («число не читается одинаково»);
Конец.
Вариант решения 2
Блок-схема алгоритма решения | Псевдокод алгоритма решения | |||||||||
| Начало; Ввод (tcde); t = tcde div 1000 с = tcde div 100 -10*t d = tcde div 10 - 10*t – c*10 е = tcde -1000*t –100*c – 10* d Если (t = e) и (c = d) то вывод («число читается одинаково»); иначе вывод («число не читается одинаково»); Конец. |
Задания для самостоятельного выполнения
Составить и записать алгоритм решения задачи в графическом и словесно-формульном виде. Задание выполняется по вариантам: 1 вариант выполняет нечетные номера, 2 вариант все четные.
1. Даны числа x, y. Проверить истинность высказывания: «Точка с координатами (x ,y ) лежит во второй координатной четверти».
2. Даны числа x , y . Проверить истинность высказывания: «Точка с координатами (x ,y ) лежит в четвертой координатной четверти».
3. Даны два целых числа: A , B . Проверить истинность высказывания: «Справедливы неравенства A > 2 и B < 3».
4. Даны два целых числа: A, B. Проверить истинность высказывания: «Справедливы неравенства A > 0 или B < —2».
5. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Справедливо двойное неравенство A < B < C».
6. Даны три целых числа: A , B, C. Проверить истинность высказывания: «Число B находится между числами A и C».
7. Даны три целых числа: A , B , C. Проверить истинность высказывания: «Каждое из чисел A , B, C положительное».
8. Даны три целых числа: A , B , C. Проверить истинность высказывания: «Хотя бы одно из чисел A , B , C положительное».
9. Даны три целых числа: A , B , C. Проверить истинность высказывания: «Ровно одно из чисел A , B , C положительное».
10. Даны три целых числа: A, B, C. Проверить истинность высказывания: «Ровно два из чисел A, B, C являются положительными».
11. Проверить истинность высказывания: «Среди трех данных целых чисел есть хотя бы одна пара совпадающих».
12. Проверить истинность высказывания: «Среди трех данных целых чисел есть хотя бы одна пара взаимно противоположных».
13. Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют возрастающую последовательность».
14. Дано трехзначное число. Проверить истинность высказывания: «Цифры данного числа образуют убывающую последовательность».
15. Дано целое число. Если оно является положительным, то прибавить к нему 1; если отрицательным, то вычесть из него 2; если нулевым, то заменить его на 10. Вывести полученное число.
16. Даны три целых числа. Найти количество положительных чисел в исходном наборе.
17. Даны три целых числа. Найти количество отрицательных чисел в исходном наборе.
18. Даны два числа. Если их значения не равны, то присвоить каждому сумму этих значений, а если равны, то присвоить числам нулевые значения. Вывести новые значения Aи B .
19. Даны два числа. Если их значения не равны, то присвоить каждому большее из этих значений, а если равны, то присвоить числам нулевые значения. Вывести новые значения A и B .
20. Даны три числа. Найти наименьшее из них.
21. Даны три числа. Найти среднее из них (то есть число, расположенное между наименьшим и наибольшим).
22. Даны три числа. Вывести вначале наименьшее, а затем наибольшее из данных чисел.
Контрольные вопросы
1. Способы представления алгоритма
2. Что такое разветвляющийся алгоритм?
3. Как в блок-схемах изображаются ветвления?
4. Что такое простое условие?
5. Что такое составное условие?