编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛  
全能 ASP / PHP / ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
发新话题
打印

表单难题如何解?

表单难题如何解?

用表单设计一个求解一元二次方程根(详细过程)

TOP

在表单中设置两个文本框和一(或二)个标签,文本框1用于输入常数a的值,文本框2用于输入常数b的值,标签用于显示X的根。
可以设置一个命令按钮“求解”,把运算过程放在该按钮的Click事件中 ,也可以在文本框的ActivateChange中设置计算过程。
学无止境 http://bbs.zc268.com

TOP

这些我都知道,可就是不知道如何编写代码啊,不过还是谢谢你啊!

TOP

代码就是把求根公式用VFP命令来表述嘛。您问的是表单问题,实际上是代码不会写。
先检查(b*b-4ac)是否小于0,如果小于零,则提示方程无实数解。否则,X1=(-b+SQRT(b*b-4ac))/2a,
X2=什么,您自己应该知道了吧。

[ 本帖最后由 啸凡 于 2008-6-10 20:54 编辑 ]
学无止境 http://bbs.zc268.com

TOP

(1)新建表单,添加4个标签,3个文本框,1个编辑框,1个命令按钮。在表单的初始化Form1.Init()写上如下的代码
ThisForm.Text1.Value=0
ThisForm.Text2.Value=0
ThisForm.Text3.Value=0
ThisForm.Text1.InputMask='9999999999.9999'
ThisForm.Text2.InputMask='9999999999.9999'
ThisForm.Text3.InputMask='9999999999.9999'
ThisForm.Edit1.Value=''
ThisForm.Edit1.ReadOnly=.T.

(2)Command1.Click()
a=ThisForm.Text1.Value
b=ThisForm.Text2.Value
c=ThisForm.Text3.Value
d=b*b-4*a*c
Do Case
Case a=0 And b=0 And c=0
  lcString='恒等式,无穷多个根'
Case a=0 And b=0 And c#0
  lcString='恒不等式,无解'
Case a=0 And b#0
  lcString='一元一次方程,根为'+transform(-b/c)
Case d>0
  lcString='一元二次方程,有两个不等实根,分别为'+transform((-b+sqrt(d))/(2*a))+'和'+transform((-b-sqrt(d))/(2*a))
Case d=0
  lcString='一元二次方程,有两个相等实根,为'+transform(-b/(2*a))
Case d<0
  lcString='一元二次方程,有共轭虚根,为'+transform(-b/(2*a))+'±'+transform(sqrt(-d)/abs(2*a))+'i'
EndCase
ThisForm.Edit1.Value=lcString
感言:学以致用。 博客:http://www.bc-cn.net/blog/user14/65009/index.shtml email:Tiger5392@tom.com

TOP

谢啦,十分感激啊!

TOP

回复 5# Tiger5392 的帖子

好厉害啊!!
   在下佩服佩服···

TOP

发新话题