Раздел 3. структурное и модульное программирование
Тема 3.1 Процедуры и функции
ЗАДАНИЕ 1
Ответьте на предложенные вопросы:
1.1 Процедура, это:
Это независимая именованная часть программы, которую после однократного описания можно многократно вызвать по имени из последующих частей программы для выполнения определенных действий.
____________________________
1.2 Функция, это:
Один из видов подпрограммы. ____________________________
1.3 Рекурсия, это:
Ситуация, когда программа вызывает сама себя непосредственно или косвенно (через другие функции) ____________________________
ЗАДАНИЕ 2
Укажите понятия, которые соответствуют перечисленным ниже определениям:
1. Подпрограмма – это отдельная функционально независимая часть программы.
2. Глобальными называются переменные, объявленные в основной программе и доступные как программе, так и всем ее подпрограммам.
3. Локальными называются переменные, объявленные внутри подпрограммы и доступные только ей самой.
ЗАДАНИЕ 3
Перечислите категории формальных параметров подпрограммы:
1) параметры-значения (эти параметры в основной программе подпрограммой не меняются);
2) параметры-переменные (эти параметры подпрограмма может изменить в основной программе);
3) параметры-константы (используются только в версии 7.0);
4) параметры-процедуры и параметры-функции (т. е. процедурного типа).
ЗАДАНИЕ 4
Выполните тест. Из предложенных ответов выберите правильный.
1. В некоторой программе описаны переменные:
I: integer;
R: real;
C: char;
Какая из процедур или функций, заголовки которых приведены ниже, может быть вызвана из этой программы с помощью оператора
C:=f(I, 5, r, 5*I, c, ’r’);
a) function f(var a:integer; b:integer; var c:real; d:real; var e:char; g:char);
b) function f(var a:integer; b:integer; var c:real; d:real; var e:char; g:char): char;
c) procedure f(var a:integer; b:integer; var c:real; var e:char; g:char): char;
2. Определите какие величины являются результатом работы подпрограммы в следующем заголовке
procedure kvadr(a,b,c:real; var x1,x2:real; var y:string);
a) x1, x2
b) y
c) a, b, c
d) x1, x2, y
Не хватает данных:
3. Определите тип значения функции в следующем заголовке
function nok(x, y: integer): real;
a) real; integer
4. Определите, какой заголовок подпрограммы-функции записан правильно
a) funtion nod(x,y:integer):integer;
b) function nod(x,y);
c) function nod(x,y:integer):integer;
d) function nod(x,y:integer);
5. Фактические параметры записываются
a) после var
b) в заголовке подпрограммы-функции
c) в заголовке подпрограммы-процедуры
d) в команде вызова подпрограммы
6. Какой вид программы применяют, если в результате получается несколько величин
a) подпрограмму-функцию и подпрограмму-процедуру
b) подпрограмму-процедуру
c) нельзя использовать подпрограмму
d) подпрограмму-функцию
7. Заголовок подпрограммы-функции начинается со слова ...
a) function
b) program
c) procedure
d) нет правильного ответа
8. Величины, описанные в подпрограмме называют
a) глобальные
b) фактические
c) локальные
d) формальные
9. Фактические параметры записываются
a) в команде вызова подпрограммы
b) в заголовке подпрограммы-процедуры
c) в заголовке подпрограммы-функции
d) после var
10. Подпрограмма-функция возвращает в основную программу
a) все варианты правильные
b) 0 значений
c) единственное значение
d) несколько значений
11. Укажите, какие параметры являются параметрами-значениями, а какие параметрами-переменными
а) var c,d : integer;
procedure P(x,y: integer);
begin
y:=x+1
end; ПАРАМЕТРЫ-ЗНАЧЕНИЯ
б) var c,d : integer;
procedure Q (x: integer; var y: integer);
begin
y:=x+1
end; ПАРАМЕТРЫ-ПЕРЕМЕННЫЕ
в) var c,d : integer;
procedure S (var x,y: integer);
begin
y:=x+1
end;
Критерии оценки теста
100%-95% – 5(отлично)
94%-75% – 4(хорошо)
74%-60% – 3(удовлетворительно)
Менее 60%– 2(неудовлетворительно)
Тема 3.2 Структуризация в программировании
ЗАДАНИЕ 1
Структурное программирование - методология и технология разработки программных комплексов, основанная на принципах:
1) - программирования "сверху-вниз";
2) - модульного программирования.
При этом логика алгоритма и программы должны использовать три основные структуры: последовательное выполнение, ветвление и повторение.
ЗАДАНИЕ 2
Ответьте на предложенные вопросы:
1.1 Заглушка в структурном программировании, это:
Это функция, имеющая "пустое" тело, то есть "заглушка" ничего не делает. ____________________________
1.2 Метод восходящего проектирования, это:
Подход, при котором в первую очередь определяются вспомогательные модули, которые потребуются для проектируемой программы. ____________________________
1.3 Нисходящее программирование, это:
Методика разработки программ, при которой разработка начинается сопределения целей решения проблемы, после чего идет последовательная детализация, заканчивающаясядетальной программой. ____________________________
1.4 Модульное программирование, это:
Это организация программы как совокупности небольших независимых блоков, называемых модулями, структура и поведение которых подчиняются определенным правилам. ____________________________
Тема 3.3 Модульное программирование
ЗАДАНИЕ 1
Типовая структура программного продукта включает:
1) головной модуль - управляет запуском программного продукта (существует в единственном числе);
2) управляющий модуль - обеспечивает вызов других модулей на обработку;
3) рабочие модули - выполняют функции обработки;
4) сервисные модули и библиотеки, утилиты - осуществляют обслуживающие функции.
ЗАДАНИЕ 2
Дана структура программного модуля. Дополните диаграмму.