基本要求:
①程序能够完成基本四则表达式的计算,即加减乘除,可以不考虑括号、函数等情况。
②在设计程序的过程中,要求熟练使用分支和循环结构以及字符串的操作。
③程序界面简洁,使用方便,如下图:
3.创新要求:
在基本要求达到后,进行创新设计,可以从如下几方面进行考虑:
①考虑表达式里边加入基本函数的情况
②考虑加入括号的情况
③能够判断非法表达式,例如有非法字符
④能够判断非法运算,例如被0除
三、设计方法和基本原理:
1.问题描述:
在解决数学问题的过程中,经常出现一些简单的四则运算,如果使用Windows的计算器来运算,需要手工分析运算顺序并且暂存运算结果,此程序就是为解决此问题而设计的,用户只需要输入要计算的四则表达式,程序即可给出运算结果。
2.问题的解决方案:
根据问题描述,可以将问题解决分为以下几个方面来进行:
①表达式由运算符和其两侧的运算数组成(- 号作为单一的负号时除外),当一个运算符和其两侧的运算数确定以后,就可以将这一部分用其运算结果替换掉,构成新的简化的表达式,运算的整个过程就是这个不断简化的过程。
②要确定这些单一的运算符和其配套的运算数,可以先把所有的运算符(+ - * /)的位置找出来并送入数组,每两个操作符之间的即为操作数(-号作为单一操作数除外)。
③简化的过程遵循四则运算过程,先算减加,再算乘除。
一个简单的简化例子如下:
1-2+3*4-6/3 -> 1-2+12-6/3 -> 1-2+12-2 -> -1+12-2 -> -1+10 -> -9
以上的过程,正是我们操作VB语言中数组和字符串的过程
四、主要技术问题的描述:
依据2的分析,主程序过程可以如下:
Do while 找到运算符
If 有乘号 then 运算该乘法
If 有除号 then 运算该除法
If 有减号并且不在第一个位置 then 运算该减法
If 有加号 then 运算该加法
loop
循环完毕直到找不到运算符,结果即为运算结果。
运算部分可以使用一个子过程来进行,该过程通过一个参数来确定加减乘除相应的操作,在该过程中要完成如下的操作:
Sub Process(pType As String)
获得所有的运算符的位置并送入数组(-号在第一位的除外)
根据pType要操作的类型确定要操作的运算符的位置
确定该运算符两侧的运算数
根据pType的运算类型完成运算
将该运算符及其两侧的运算数用运算结果替换,返回新的串
End sub
求大神帮做一个vb四则运算测试的程序,是计算机大作业
"Label4.Caption = ""End SubPrivate Sub Form_Load()Label1.Caption = "请根据下面的运算表达式计算出结果,并且填写在文本框中并回车(小数保留两位)。"Label2.Caption = "请输入结果:"Command1.Caption = "下一题"Command2.Caption = "重来"ReDim OP(9)For i = 0 To 9RandomizeOP(i)....
简易计算器的设计与实现:能进行简单的四则运算和基本数学函数(如对数...
最简单的方法应该是用函数EVAL了吧,它直接可以把包含四则运算和基本数学函数(如对数,指数,三解函数等)的表达式计算为数值:方法如下:打开记事本:输入下面代码:on error resume next do s=eval(s)s=inputbox("结果:"&s&chr(13)&chr(10)&"请输入表达式,为空则退出")loop until s=""然后...
VB中文本内公式的计算问题
'Function tran() 的功能是将一个包含有 '算术四则运算符号表达式的字符串(下称“源字符串”),'转换为算术表达式并计算出结果 '并将计算结果转换为字符串后返回 '例:tran("1+2-3*4\/5") 返回 ".6"'Function tran() 处理的字符串必须是 '经过检验合法的算术表达式 '否则会出错 Dim k As...
VB解方程
if a(1)
如何用VB写 求24点或任意值的四则运算 支持负数
只要我能编程实现四个数加上运算符号所构成的表达式的穷举,不就可以利用这个计算程序来完成这个计算二十四点的程序吗?确定了这个思路之后,我开始想这个问题的细节。 首先穷举的可行性问题。我把表达式如下分成三类—— 1、 无括号的简单表达式。 2、 有一个括号的简单表达式。 3、 有两个括号的较复4、 杂表达式...
如何用VB编一个计算X值Y值的程序?
1、在B2单元格输入表达式= 1200\/[1-(X+25%)]*(X+25%)=500 2、在“数据”选项下的“模拟运算”中,选择“单变量求解”。3、选择目标单元格为B2,输入Y值,选择B1为可变单元格,按“确定”。4、单元格求解状态返回一个解,按确定,保存符合要求的X值。5、单变量求解被广泛用于一元多次方程,...
vb表达式计算
mod -2 = -1 3、-3^2\/4*8\\-7mod -1.5 = 0 4、7 mod 3 +3^3\/4\\5 = 2 5、2^(-2\\1.5)*16 mod 3\/2 = 0 6、151\\13*(-2)mod-1-3^(3\\5\/2) = -3 ’请参考采纳!谢谢!
用程序计算数学表达式S=1的平方-2的平方+3的平方-4的平方+...+N的平 ...
Private Sub Command1_Click()n = InputBox("请输入n:")a = 1 For i = 1 To n s = s + a * i ^ 2 a = -a Next i Print "s=" & s End Sub
VB.NET程序设计实用教程目录
1.4 任务1-2:第一个VBNET控制台应用程序——欢迎信息的显示 第2章 程序设计基础与结构化程序设计语句 2.1 数据类型、常量与变量 2.1.1 基本数据类型 2.1.2 常量与变最 2.2 任务2-1:求一元二次方程的根——选择结构程序设计一 2.3 任务2-2:话费计算程序——选择结构程序设计二 2.4...
计算数学表达式1-2\/2!+3\/3!-4\/4!+...+(-1)^n+1*n\/n!的VB程序设计
n=5 x=1 temp_x=1 for i=2 to n temp_x=temp_x*i if i mod 2 =0 then x=x-i\/temp_x else x=x+i\/temp_x end if next i msg "计算的结果是:"&x