Цель урока: Познакомить учащихся с организацией вспомогательных алгоритмов, дать понятие пошаговой детализации, изучить операторы для работы с подпрограммами, научиться решать сложные задачи с выделением простых подзадач.
Ход урока:
Решение новых задач ведет к решению уже известных, сложных к простым подзадачам. Следовательно в алгоритмах решения сложных задач для решения подзадач могут выделяться вспомогательные алгоритмы, которые описывают способы решения некоторой вспомогательной задачи или даже общий способ решения некоторого класса вспомогательных подзадач.
В результате использования вспомогательных алгоритмов- первоначальный основной алгоритм является основным планом предстоящих действий.
Рассмотрим на примере:
алг «Домик»
нач
стена с дверью
крыша
кон
алг «Стена с дверью»
нач
стена с окном
дверь
кон
Описание сверху вниз: последовательно уточняется план изображения, который доводится до детальных инструкций, непосредственно понятных исполнителю- пошаговая детализация.
Аргументы во вспомогательном алгоритме – переменные и другие области памяти, куда помещаются исходные данные для решения задачи.
Результат- переменные и массивы, куда записываются конечные результаты.
Общая форма записи:
Алг <название подзадачи>
Арг <список аргументов>
Рез <список результатов>
Нач
<план действий>
Кон
Для организации вспомогательных алгоритмов в программах на языке QBASIC используются операторы: GOSUB (метка)
RETURN
Рассмотрим использование данных операторов на примере следующей задачи:
Найти максимум из 3 чисел, произвольно введенных с клавиатуры.
PRINT “Ведите любые 3 числа через запятую”;A,B,C
X=A
Y=B
GOSUB 100
X=M
Y=C
GOSUB 100
PRINT M
END
100 IF X>Y THEN M=X ELSE M=Y
RETURN
3. Закрепление:
На компьютере отладить программу.
Для продвинутых: найти площадь параллелограмма, если известны его стороны и диагональ.
д/з конспекты, задача.