Задать произвольные координаты центров x(i), y(i) и радиусов r(i) для n окружностей - VB
Формулировка задачи:
Имеются две точки с координатами (a,b) и (c,d).
Задать произвольные координаты центров x(i),y(i) и радиусов r(i) для n окружностей. Определить, сколько из них содержат обе точки.
Примечание: обе точки лежат в круге, если (x(i)-a)2+(y(i)-b)2 < r(i)2 и (x(i)-c)2+(y(i)-d)2 < r(i)2.
Нужно написать программу(построить график) с 2 подпрограммами.Мне легче на С++ написать это чем на basic.Нужна помощь ребят.
Решение задачи: «Задать произвольные координаты центров x(i), y(i) и радиусов r(i) для n окружностей»
textual
Листинг программы
Private Sub Command1_Click() Dim x() As Integer, y() As Integer, r() As Integer Dim i As Integer, kol As Integer, n As Integer Dim a As Integer, b As Integer, c As Integer, d As Integer Me.ScaleMode = 3: Me.DrawWidth = 5: Me.ForeColor = vbRed n = InputBox("Введите количество окружностей", "", 3) ReDim x(1 To n), y(1 To n), r(1 To n) a = InputBox("Введите координату Х первой точки", "", 200) b = InputBox("Введите координату У первой точки", "", 200) c = InputBox("Введите координату Х второй точки", "", 120) d = InputBox("Введите координату У второй точки", "", 150) PSet (a, b): PSet (c, d) For i = 1 To n x(i) = InputBox("Введите координату Х " & i & "-й окружности", "", 120 * i) y(i) = InputBox("Введите координату У " & i & "-й окружности", "", 180 / i) r(i) = InputBox("Введите радиус " & i & "-й окружности", "", 50 * i * 2) If (x(i) - a) ^ 2 + (y(i) - b) ^ 2 < r(i) ^ 2 And _ (x(i) - c) ^ 2 + (y(i) - d) ^ 2 < r(i) ^ 2 Then kol = kol + 1 End If Circle (x(i), y(i)), r(i), vbBlue Next MsgBox "Число окружностей содержащих обе точки равно " & kol, vbExclamation End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д