求用VB编辑一个计算二元一次方程组的程序

求用VB编辑一个计算二元一次方程组的程序,第1张

程序代码就是这样,如果要详细的,留下邮箱我给你发过来

-----------------------------------------------------------------------

Private Sub Command1_Click()

If IsNumeric(Text3Text) And IsNumeric(Text4Text) And IsNumeric(Text5Text) And IsNumeric(Text6Text) And IsNumeric(Text7Text) And IsNumeric(Text8Text) Then

a1 = Val(Text3Text)

a2 = Val(Text4Text)

b1 = Val(Text5Text)

b2 = Val(Text6Text)

c1 = Val(Text7Text)

c2 = Val(Text8Text)

Else

MsgBox "未完整输入数据无法运算,请输入数据。"

a1 = Val(InputBox("a1 = ", "输入a1值", , 20))

b1 = Val(InputBox("b1 = ", "输入b1值", , 20))

c1 = Val(InputBox("c1 = ", "输入c1值", , 20))

a2 = Val(InputBox("a2 = ", "输入a2值", , 20))

b2 = Val(InputBox("b2 = ", "输入b2值", , 20))

c2 = Val(InputBox("c2 = ", "输入c2值", , 20))

End If

If IsNumeric(a1) And IsNumeric(b1) And IsNumeric(c1) And IsNumeric(a2) And IsNumeric(b2) And IsNumeric(c2) Then

Y1 = a1 c2 - a2 c1

X1 = b2 c1 - b1 c2

Text3Text = a1

Text4Text = a2

Text5Text = b1

Text6Text = b2

Text7Text = c1

Text8Text = c2

e = a1 b2 - a2 b1 + 1

Else

MsgBox " 字符无效 无法求解。"

Text1Text = "×"

Text2Text = "×"

End If

If e <> 1 And IsNumeric(a1) And IsNumeric(b1) And IsNumeric(c1) And IsNumeric(a2) And IsNumeric(b2) And IsNumeric(c2) Then

y = Y1 / (e - 1)

x = X1 / (e - 1)

Text1Text = x

Text2Text = y

ElseIf e = 1 Then

MsgBox "除数为零/系数相同 无法求解"

Text1Text = "×"

Text2Text = "×"

End If

End Sub

,VB中添加几个文本框,分别代表二元方程y=kx+b的k和b,

然后编计算代码,二元一次方程很简单的一个数学关系式,计算的编写应该好写的

注意的一点是文本框的数据参与计算时要转型,用val(text1text) and IsNumeric(text1text)来确保数据正确参与运算

二元一次方程组的意义

含有两个未知数的方程并且未知项的次数是1,这样的方程叫做二元一次方程。

两个二元一次方程合在一起,就组成了一个二元一次方程组。

有几个方程组成的一组方程叫做方程组。如果方程组中含有两个未知数,且含未知数的项的次数都是一次,那么这样的方程组叫做二元一次方程组。

解法

二元一次方程组有两种解法,一种是代入消元法,加减消元法

方程组:Ax+By=C Dx+Ey=F

算法的来源是线性方程组求解的克莱默法则,具体原理参看百科或相关文库。

①首先判断方程组解的存在性:当且仅当Δ=AE-BD≠0时,方程组有唯一的解;若等于0则输出:“方程组无解或有无穷多组解”;

②如有唯一解,则求解:

x=(CE-BF)/Δ

y=(AF-CD)/Δ

③输出结果;

程序框图有点难画,大概的流程是在最开始输入方程的系数,然后经过①判断,是则继续下一步②,否则输出语句后跳回;②计算完毕后输出结果跳回。

不好意思,没看清题目

#include<iostream>

using namespace std;

void main()

{

float a,b,c,d,e,f;

cout<<"请输入二元一次方程组\n"

<<"ax+by+c=0\n"

<<"dx+ey+f=0\n";

cout<<"a=";

cin>>a;

cout<<"b=";

cin>>b;

cout<<"c=";

cin>>c;

cout<<"d=";

cin>>d;

cout<<"e=";

cin>>e;

cout<<"f=";

cin>>f;

if(ae==bd)

cout<<"方程组无解。\n";

else

{

cout<<"x="<<(bf-ec)/(ae-bd)<<endl;

cout<<"y="<<(af-dc)/(bd-ae)<<endl;

}

}

分析 分析程序中各变量、各语句的作用,再根据流程图所示的顺序,可知:该程序的作用是用行列式解二元一次方程组 的解. 分析程序中各变量、各语句的作用, \n再根据流程图所示的顺序,可知: \n该程序的作用是是用行列式解二元一次方程组 的解. \n当D≠0时,输出方程组的惟一 ; \n当D=0,D x =0且D y =0时,输出方程组方程组有无穷多解; \n当D=0时,D x ≠0或D y ≠0时,输出方程组方程组无解; \n故答案为:(1) (2)方程组无解、(3)方程组有无穷多解. 点评 根据流程图(或伪代码)写程序的运行结果,是算法这一模块最重要的题型,其处理方法是::①分析流程图(或伪代码),从流程图(或伪代码)中既要分析出计算的类型,又要分析出参与计算的数据(如果参与运算的数据比较多,也可使用表格对数据进行分析管理)⇒②建立数学模型,根据第一步分析的结果,选择恰当的数学模型③解模.

我只是个学生,想来参与下,呵呵

#include<iostreamh>

int jc(double x)

{

if(x>127||x<-128)return 0;

return 1;

}

void main()

{

double a1,a2,b1,b2,c1,c2,x,y;

loop:cout<<"请输入a1,b1,c1"<<endl;

cin>>a1>>b1>>c1;

cout<<"请输入a2,b2,c2"<<endl;

cin>>a2>>b2>>c2;

if(!jc(a1)||!jc(a2)||!jc(b1)||!jc(b2)||!jc(c1)||!jc(c2))

{cout<<"输入的值应在-128与127之间,请重新输入"<<endl;<br/> goto loop;}

b2=b2-b1a2/a1;

c2=c2-c1a2/a1;

cout<<"-----------------------------------------------------答案如下"<<endl;

if(b2==0&&c2==0)

cout<<"有无数解"<<endl;

if(b2==0&&c2!=0)

cout<<"无解"<<endl;

if(b2!=0&&c2==0)

{

x=c1/a1;

if(jc(x))cout<<"y=0,x="<<x<<endl;

else cout<<"由于x值超出范围,所以无法显示"<<endl;

}

if(b2!=0&&c2!=0)

{

y=c2/b2;

x=c1/a1-b1c2/b2/a1;

if(jc(x)||jc(y))cout<<"y="<<y<<"x="<<x<<endl;

}

cout<<"谢谢使用,再见"<<endl;

}

以上就是关于求用VB编辑一个计算二元一次方程组的程序全部的内容,包括:求用VB编辑一个计算二元一次方程组的程序、用VB怎样编写二元一次方程的程序、解二元一次方程组程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9321838.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存