Задать произвольные координаты центров 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 окружностей - VB»

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

12   голосов, оценка 4.333 из 5


СОХРАНИТЬ ССЫЛКУ