Тема: Работа с управляющими структурами VBA
Вариант №1 Задача: Разработать программу на VBA, которая в ответ на вводимую с клавиатуры пару вещественных чисел, представляющих собой координаты Х и Y, точки А на плоскости, выдает текстовое сообщение о принадлежности этой точки заданной области. Например, «Точка принадлежит закрашенной области». В программе должно быть предусмотрено неограниченное повторение всех операций. Решение о повторе должен принимать пользователь с помощью клавиатуры. Графическая схема и пояснения: Первая закрашенная область задается системой неравенств: Первое неравенство задает точки внутри круга, второе неравенство задает точки внутри эллипса, третье – точки под прямой. При пересечении эти области дадут нам первую закрашенную область. Вторая закрашенная область задается системой неравенств: Текст программы: Const pi = 3.14159265358979 Dim x, y As Double Sub Vichislenie() Dim t As String 1: t = InputBox("Введите значение x:") x = Val(t) t = InputBox("Введите значение y:") y = Val(t) If ((((x + 25) ^ 2 + (y - 25) ^ 2 <= 625) And (x ^ 2 / 6400 + (y - 50) ^ 2 / 2025 <= 1) And (y <= Sin(5 / 6 * pi) / Cos(5 / 6 * pi) * (x - 40))) Or ((x ^ 2 / 6400 + (y - 50) ^ 2 / 2025 <= 1) And (y >= Sin(5 / 6 * pi) / Cos(5 / 6 * pi) * (x - 40)) And (x >= 0))) Then MsgBox ("Точка А принадлежит закрашенной области") Else MsgBox ("Точка А не принадлежит закрашенной области") ret = MsgBox("Повторить вычисления?", vbYesNo, " ") If ret = vbYes Then GoTo 1 End If End Sub Тесты: 1) Введите координаты точки А: x=-25 y=25 Точка А принадлежит закрашенной области.
2) Введите координаты точки А: x=-25 y=50 Точка А не принадлежит закрашенной области.
3) Введите координаты точки А: x=40 y=20 Точка А принадлежит закрашенной области.
4) Введите координаты точки А: x=40 y=1 Точка А не принадлежит закрашенной области.
|