Решение. Алгоритм (блок-схема) решения задачи:
Алгоритм (блок-схема) решения задачи: Процедура Zadanie_A Функция Zadanie_B Процедура вызова Zadanie_A, Zadanie_B, rez Программа: Модуль 1: Option Explicit ' Требование обязательного объявления переменных Public rez As String ' Объявление глобальной (доступной во всех модулях) ' переменной по имени rez для хранения результатов
Public Sub Zadanie_A(x As Double) ' Объявление глобальной (доступной во всех модулях) ' процедуры по имени Zadanie_A, для работы которой ' требуется один входной параметр, хранимый в переменной x Dim y As Double ' Объявление локальной (доступной только в текущей процедуре) ' переменной по имени y для хранения вещественных чисел If (x > 1 And x <= 2) Then ' Проверка условия для расчета y = Sqr((2 - x) / Log(x)) ' Запись результата расчета в локальную переменную rez = "Задание А: В x = " & x & " y = " & y ' Запись в глобальную переменную результатов расчета Else rez = "Задание А: В x = " & x & " функции нет" ' Запись в глобальную переменную результатов расчета End If End Sub ' Завершение объявления процедуры Zadanie_A
Public Function Zadanie_B(x As Double) As Double ' Объявление глобальной (доступной во всех модулях) ' функции по имени Zadanie_B, возвращающей ' значение типа вещественного числа. Для работы функции ' требуется один входной параметр, хранимый в переменной x Dim y As Double ' Объявление локальной (доступной только в текущей функции) ' переменной по имени y для хранения вещественных чисел Select Case x ' Оператор Select для выполнения расчета и записи результата ' в локальную переменную y Case Is < 0 y = x + 1 Case Is <= 1 y = Sqr(1 - x * x) Case Else y = 0 End Select ' Завершение оператора Select rez = rez & Chr(13) & "Задание Б: В х = " & x & " y = " & y ' Дописывание в глобальную переменную результатов расчета Zadanie_B = y ' Запись из локальной переменной y в функцию Zadanie_B значения для возврата его в месте вызова функции (Zadanie_B) End Function ' Завершение объявления функции Zadanie_B
Модуль 2: Option Explicit ' Требование обязательного объявления переменных Sub glavnaja() ' Объявление процедуры по имени glavnaja Zadanie_A 1.2 ' Вызов (выполнение) процедуры Zadanie_A с переданным ей ' параметром равным 1.2 MsgBox Zadanie_B(0.1) ' Отображение значения, возвращаемого функцией Zadanie_B, ' после ее вызова с переданным параметром равным 0.1 MsgBox rez ' Отображение значения глобальной (доступной во всех ' модулях) переменной rez End Sub Результаты работы программы: Вызов процедуры glavnaja:
|