Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_ОАиПрг_2курс_лабораторные.doc.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
663.33 Кб
Скачать

Лабораторная работа № 7.

ТЕМА: Разработка алгоритмов и программ методом пошаговой детализации.

ЦЕЛЬ РАБОТЫ:

  1. Получить практические навыки по составлению программ с функциями и процедурами пользователя.

  2. Научить различать фактические и формальные параметры.

  3. Развить потребность использования метода пошаговой детализации при разработке алгоритмов и программ.

  4. Выработать навыки составления программ с использованием процедур и функций.

ЗАДАНИЕ.

Решение задачи из лабораторной работы №6 оформить в виде процедуры (функции). Эта процедура не должна иметь глобальных переменных и выполнять каких-либо операций ввода-вывода. Весь необходимый ввод-вывод должен быть сосредоточен в разделе операторов программы. Там же должен находиться и вызов процедуры решения задачи. Предполагается, что обмен данными между вызывающей программой и вызываемой процедурой выполняется только через параметры.

КОНТРОЛЬНЫЕ ВОПРОСЫ.

1. Что называется подпрограммой ?

2. В каких случаях целесообразно ее применять ?

3. Чем отличается функция от процедуры ?

4. Kакие бывают функции и процедуры ?

5. Kак определяется функция пользователя в программе ?

6. В каком месте программы она может определятся ?

7. Kак осуществляется обращение к функции пользователя ?

8. Kак определяется процедура пользователя в программе ?

9. В каком месте программы она может определятся ?

10. Kак осуществляется обращение в программе ?

11. Kак осуществляется передача данных из программы в процедуру пользователя и назад из процедуры в программу?

12. Kак осуществляется передача данных из программы в функцию пользователя и назад ?

Лабораторная работа №8. Создание и подключение пользовательских модулей

Цель: на практике изучить синтаксис описания модуля, подключения его к основной программе. Наглядно продемонстрировать разницу в размере кода с использованием модулей и без них.

Ход работы:

  1. Поместить в модуль процедуру, возвращающую дискриминант и корни квадратного уравнения. Продемонстрировать работу модуля в основной программе.

  2. Поместить в модуль процедуру, возвращающую длину окружности и площадь круга по передаваемому радиусу. Продемонстрировать работу модуля в основной программе.

  3. Поместить в модуль процедуру, возвращающую минимальный и максимальный элемент массива. Продемонстрировать работу модуля в основной программе.

  4. Поместить в модуль функцию, определяющую количество цифр во введенном числе. Продемонстрировать работу модуля в основной программе.

  5. Поместить в модуль процедуру, возвращающую среднее арифметическое и среднее геометрическое элементов массива. Продемонстрировать работу модуля в основной программе.

  6. Поместить в модуль процедуру, подсчитывающую количество положительных и количество отрицательных элементов массива. Продемонстрировать работу модуля в основной программе.

  7. Поместить в модуль процедуру, вычисляющую периметр и площадь прямоугольного треугольника по 2 его катетам. Продемонстрировать работу модуля в основной программе.

  8. Поместить в модуль процедуру, определяющую, попадает ли точка в окружность радиуса R с центром в начале координат. Продемонстрировать работу модуля в основной программе для некоторого количества точек (признак завершения ввода – точка (0,0)).

  9. Поместить в модуль процедуру, возвращающую элементы массива в обратном порядке. Продемонстрировать работу модуля в основной программе.

  10. Поместить в модуль процедуру, возвращающую только четные элементы массива в новый массив. Продемонстрировать работу модуля в основной программе.

  11. Поместить в модуль процедуру, возвращающую только положительные элементы массива в новый массив. Продемонстрировать работу модуля в основной программе.

  12. Поместить в модуль функцию, возвращающую определитель матрицы 3х3. Продемонстрировать работу модуля в основной программе.

  13. Поместить в модуль процедуру, возвращающую только элементы побочной диагонали матрицы nxn в новый массив. Продемонстрировать работу модуля в основной программе.

  14. Поместить в модуль процедуру, возвращающую N членов последовательности Фибоначчи в массив. Продемонстрировать работу модуля в основной программе.

  15. Поместить в модуль процедуру, попарно меняющую элементы массива (1 со 2, 3 с 4 и т.д.). Продемонстрировать работу модуля в основной программе.