Написать программу, рисующую график функции y(x)=sinx/(1+x^2) - VB
Формулировка задачи:
Добрый день!
Подскажите, пожалуйста, мне нужно сделать программу, в которой вводится начальное значение X, затем конечное значение X и потом шаг. Рядом выводится список всех значений X и значений Y при каждом из этих X. Также должен быть нарисован график. Функция: y(x)=sinx/(1+x^2). Подскажите, пожалуйста, как это реализовать
Решение задачи: «Написать программу, рисующую график функции y(x)=sinx/(1+x^2)»
textual
Листинг программы
Option Explicit Dim x As Double, y As Double, i As Double, P As PictureBox Dim xn As Double, xk As Double, stp As Double Private Sub Command1_Click() xn = Val(Replace(InputBox("Введите начальное значение X", , -10), ",", ".")) xk = Val(Replace(InputBox("Введите конечное значение X", , 10), ",", ".")) stp = Val(Replace(InputBox("Введите шаг", , 0.01), ",", ".")) List1.Clear Call Scal(xn, xk) Call Coord(xn, xk) Call Graf(xn, xk) End Sub Private Sub Graf(sn, sk) For x = sn To sk Step stp 'y = (Sin(3 * x)) ^ 2 y = Sin(x / (1 + x ^ 2)) List1.AddItem "x = " & Round(x, Len(stp)) & Space(10) & vbTab & "y = " & Round(y, 5) ' P.Circle (x, y), 0.01, RGB(255, 0, 0) P.PSet (x, y), 255 Next x End Sub Private Sub Scal(sn, sk) Set P = Picture1 P.Cls P.DrawStyle = 0: P.AutoRedraw = True P.Scale (sn, 1)-(sk, -1) P.DrawWidth = 2 P.Line (sn, 0)-(sk, 0), RGB(0, 0, 255) 'ocb X P.Line (0, -1)-(0, 1), RGB(0, 0, 255) 'ocb Y End Sub Private Sub Coord(sn, sk) 'Kоординатная сетка P.DrawWidth = 1 P.DrawStyle = 2 ' Пунктирная линия For i = -1 To 1 Step 0.2 P.CurrentX = 0 ' оцифровка P.CurrentY = i P.Print Format$(i, "0.0") P.Line (-0.05, i)-(0.05, i) ' засечка P.Line (sn, i)-(sk, i) Next i For i = sn To sk 'Step 0.5 P.CurrentX = i ' оцифровка P.CurrentY = 0 P.Print Format$(i, "0.0") P.Line (i, -0.05)-(i, 0.05) ' засечка P.Line (i, -1)-(i, 1) Next i P.DrawStyle = 0 ' P.DrawWidth = 3 P.FillStyle = 0 P.FillColor = 255 End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д