На плоскости XOY задана своими координатами точка А - VB

Узнай цену своей работы

Формулировка задачи:

На плоскости XOY задана своими координатами точка А. Указать,где она расположена: на какой оси, или в каком координатном угле. Изобразить координатную плоскость, и точку А после ввода значений координат. Решить задачу, используя 2 способа ввода значений координат точки : с клавиатуры в соответствующие текстовые поля и с помощью мыши(при этом в текстовых полях целочисленные значения координат точки появляются автоматически)

Решение задачи: «На плоскости XOY задана своими координатами точка А»

textual
Листинг программы
Private Sub Command1_Click()
    Call Draw(Val(Text1.Text), Val(Text2.Text))
End Sub
 
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    X = Round(X): Y = Round(Y)
    Call Draw(X, Y)
    Text1.Text = X: Text2.Text = Y
End Sub
 
Private Sub Draw(ByVal X As Single, ByVal Y As Single)
    Call Coord
    Picture1.Circle (X, Y), 0.15, RGB(255, 0, 0)
    Picture1.Print "A"
    Label2.Caption = DetectPointA(X, Y)
End Sub
  
Private Sub Coord()
     Dim i As Single
     Dim plusX As Integer, plusY As Integer, minusX As Integer, minusY As Integer
     plusX = 10: plusY = 10: minusX = -10: minusY = -10
     Picture1.DrawStyle = 0: Picture1.FillStyle = 0: Picture1.AutoRedraw = True
     Picture1.Cls
     Picture1.Scale (minusX, plusY)-(plusX, minusY)
     Picture1.Line (minusX, 0)-(plusX, 0), vbBlue  'ocb X
     Picture1.Line (0, minusY)-(0, plusY), vbBlue   'ocb Y
     Picture1.FontBold = False: Picture1.FontSize = 8
     Picture1.FillColor = vbRed
     Picture1.DrawStyle = 2   ' Пунктирная линия
     For i = minusY To plusY Step 1
          Picture1.CurrentX = 0    ' оцифровка
          Picture1.CurrentY = i
          Picture1.Print i
          Picture1.Line (-0.05, i)-(0.05, i)   ' засечка
          Picture1.Line (minusX, i)-(plusX, i)
     Next i
     For i = minusX To plusX Step 1
          Picture1.CurrentX = i    ' оцифровка
          Picture1.CurrentY = 0
          Picture1.Print i
          Picture1.Line (i, minusY)-(i, plusY) ' засечка
     Next i
     Picture1.FontBold = True: Picture1.FontSize = 18
     Picture1.CurrentX = plusX / 2: Picture1.CurrentY = plusY / 2: Picture1.Print "I"
     Picture1.CurrentX = minusX / 2: Picture1.CurrentY = plusY / 2: Picture1.Print "II"
     Picture1.CurrentX = minusX / 2: Picture1.CurrentY = minusY / 2: Picture1.Print "III"
     Picture1.CurrentX = plusX / 2: Picture1.CurrentY = minusY / 2: Picture1.Print "IV"
     Picture1.FontSize = 12
 End Sub
 
Private Function DetectPointA(ByVal X As Integer, ByVal Y As Integer) As String
    Dim s As String
    s = "Точка ""А"" находится "
    If X = 0 And Y = 0 Then
       s = s & "в начале координат"
    ElseIf X = 0 Then
       s = s & "на оси Y"
    ElseIf Y = 0 Then
       s = s & "на оси X"
    ElseIf X > 0 And Y > 0 Then
       s = s & "в первой координатной четверти"
    ElseIf X < 0 And Y > 0 Then
       s = s & "во второй координатной четверти"
    ElseIf X < 0 And Y < 0 Then
       s = s & "в третьей координатной четверти"
    ElseIf X > 0 And Y < 0 Then
       s = s & "в четвертой координатной четверти"
    End If
    DetectPointA = s
End Function
 
Private Sub Form_Load()
    Coord
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5
Похожие ответы