VB中关于Input的问题
题目是这样的:向一个TXT文档中输入一元二次方程的三个系数(即a,b,c),在输出文档TXT中就有有关这个一元二次方程根的情况我写的程序是这样的PrivateSubFor...
题目是这样的:向一个TXT文档中输入一元二次方程的三个系数(即a,b,c),在输出文档TXT中就有有关这个一元二次方程根的情况
我写的程序是这样的
Private Sub Form_Load()
Dim a As Double
Dim b As Double
Dim c As Double
Open "输入.txt" For Input As #1
Open "输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
X1 = (-b + Sqr(d)) / (2 * a)
X2 = (-b - Sqr(d)) / (2 * a)
End If
Print #2, "方程有解"
Print #2, "X1=", X1
Print #2, "X2=", X2
Close
End
End Sub
VB中一直提示输入超出文件尾,不知道是什么意思……
该怎么修改程序?
汗,菜鸟入门,别嘲笑……
这是作业题……
希望能写出来我才知道我错哪……
谢谢啦! 展开
我写的程序是这样的
Private Sub Form_Load()
Dim a As Double
Dim b As Double
Dim c As Double
Open "输入.txt" For Input As #1
Open "输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
X1 = (-b + Sqr(d)) / (2 * a)
X2 = (-b - Sqr(d)) / (2 * a)
End If
Print #2, "方程有解"
Print #2, "X1=", X1
Print #2, "X2=", X2
Close
End
End Sub
VB中一直提示输入超出文件尾,不知道是什么意思……
该怎么修改程序?
汗,菜鸟入门,别嘲笑……
这是作业题……
希望能写出来我才知道我错哪……
谢谢啦! 展开
4个回答
展开全部
Private Sub Form_Load()
Dim a As Double, b As Double, c As Double, d As Double
Dim x1 As Double, x2 As Double
Open App.Path & "\输入.txt" For Input As #1
Open App.Path & "\输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
x1 = (-b + Sqr(d)) / (2 * a)
x2 = (-b - Sqr(d)) / (2 * a)
Print #2, "方程有解"
Print #2, "X1=", x1
Print #2, "X2=", x2
End If
Close #2
Close #1
End
End Sub
另外,你要预先用记事本编辑一个文本文件,内容如下:
5,9,4
也就是a,b,c的值,当然具体的数值你自己决定。然后存盘为“输入.txt”,并且放到你的程序所在文件夹内。
Dim a As Double, b As Double, c As Double, d As Double
Dim x1 As Double, x2 As Double
Open App.Path & "\输入.txt" For Input As #1
Open App.Path & "\输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
x1 = (-b + Sqr(d)) / (2 * a)
x2 = (-b - Sqr(d)) / (2 * a)
Print #2, "方程有解"
Print #2, "X1=", x1
Print #2, "X2=", x2
End If
Close #2
Close #1
End
End Sub
另外,你要预先用记事本编辑一个文本文件,内容如下:
5,9,4
也就是a,b,c的值,当然具体的数值你自己决定。然后存盘为“输入.txt”,并且放到你的程序所在文件夹内。
展开全部
对不起,刚刚我们这儿停电了。
楼上是对的,你的代码也是对的,只是end if的位置要稍微改变一下,如下:
Private Sub Form_Load()
Dim a As Double
Dim b As Double
Dim c As Double
Open "输入.txt" For Input As #1
Open "输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
X1 = (-b + Sqr(d)) / (2 * a)
X2 = (-b - Sqr(d)) / (2 * a)
'原End If位置
Print #2, "方程有解"
Print #2, "X1=", X1
Print #2, "X2=", X2
End If 'End If应该在这里
Close
End
End Sub
你的问题应该是你的文件没有保存,你最好关掉 输入.txt 然后再打开试试 ,你必需确认你的文件里面有1 2 1这样的内容;
楼上是对的,你的代码也是对的,只是end if的位置要稍微改变一下,如下:
Private Sub Form_Load()
Dim a As Double
Dim b As Double
Dim c As Double
Open "输入.txt" For Input As #1
Open "输出.txt" For Output As #2
Input #1, a, b, c
d = b * b - 4 * a * c
If d < 0 Then
Print #2, "方程无解"
Else
X1 = (-b + Sqr(d)) / (2 * a)
X2 = (-b - Sqr(d)) / (2 * a)
'原End If位置
Print #2, "方程有解"
Print #2, "X1=", X1
Print #2, "X2=", X2
End If 'End If应该在这里
Close
End
End Sub
你的问题应该是你的文件没有保存,你最好关掉 输入.txt 然后再打开试试 ,你必需确认你的文件里面有1 2 1这样的内容;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
紧靠 Input 语句之前使用 EOF 函数以检测文件的结尾。
如果文件是为进行二进制访问而打开的,则使用 Seek 和 Loc
如果文件是为进行二进制访问而打开的,则使用 Seek 和 Loc
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的程序所在文件夹里要建一个“输入.txt”,里面有3个系数,用“,”隔开
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询