作业帮 > 综合 > 作业

怎么样用vb绘制二次函数图象,我只会画一次的

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/18 12:49:25
怎么样用vb绘制二次函数图象,我只会画一次的
代码类似于
Private Sub Cmd1_Click()
k = Val(InputBox("k"))
b = Val(InputBox("b"))
Picture1.Cls
Picture1.ScaleMode = 3
Picture1.Scale (-150,150)-(150,-150)
Picture1.DrawWidth = 1
Picture1.Line (-150,0)-(150,0),RGB(0,0,255)
Picture1.Line (0,150)-(0,-150),RGB(0,0,255)
Picture1.CurrentX = 1
Picture1.CurrentY = -1
Picture1.DrawWidth = 2
For x = -140 To 140
Picture1.PSet (x,k * x + b),RGB(255,0,0)
Next x
End Sub
写的简单点,最好加个注释
Dim j As Single
Dim record(1000) As Single
Dim p As Single
Private Sub Command1_Click()
p = 4
Picture1.Cls
Picture1.Scale (-200,2000)-(2000,-2000) '定义坐标
For j = 0 To 250
record(j) = 20 * Sqr(2 * p * j) '抛物线公式Y^=2 * p * X
Picture1.Line (j * 20,record(j) + 2)-(j * 20,record(j) - 2),vbRed,BF 'Y为正的
Picture1.Line (j * 20,-record(j) + 2)-(j * 20,-record(j) - 2),vbRed,BF 'Y为负的
Next
Picture1.Line (-2000,0)-(2000,0) 'X轴
Picture1.Line (0,2000)-(0,-2000) 'Y轴
End Sub
再问: 额。。。我写的那个一次函数可以根据输入k和b的值来画图像。。。你这个。。。好像不能画吧
再答: Const pi = 3.14159265359879 Dim x Private Sub Command1_Click() '首先清除picture1内的图形 Picture1.Cls 'Scale方法设定用户坐标系,坐标原点在Picture1中心 Picture1.ScaleMode = 0 Picture1.ScaleMode = 3 Picture1.Scale (-20, 20)-(20, -20) '设置绘线宽度 Picture1.DrawWidth = 1 '绘坐标系的X轴及箭头线 Picture1.Line (-20, 0)-(20, 0), vbBlue Picture1.Line (18, 1)-(20, 0), vbBlue Picture1.Line -(18, -1), vbBlue Picture1.ForeColor = vbBlue Picture1.Print "X" '绘坐标系的Y轴及箭头线 Picture1.Line (0, 20)-(0, -20), vbBlue Picture1.Line (1, 18)-(0, 20), vbBlue Picture1.Line -(-1, 18), vbBlue Picture1.Print "Y" '指定位置显示原点O Picture1.CurrentX = 1 Picture1.CurrentY = -1 Picture1.Print "O" '重设绘线宽度 Picture1.DrawWidth = 2 '用For循环绘点,使其按抛物线规律变化。步长值很小,使之形成动画效果 a = Val(InputBox("a")) b = Val(InputBox("b")) c = Val(InputBox("c")) For x = -20 To 10 Step pi / 6000 Picture1.PSet (x, a * x ^ 2 / 5 + b * x - c), vbRed Next x '指定位置显示描述文字 Picture1.CurrentX = pi / 2 Picture1.CurrentY = -7 Picture1.ForeColor = vbBlack Picture1.Print "抛物线示意" End Sub