精华内容
下载资源
问答
  • vb函数 很适用的 便于查找 有好多的内容 vb函数 很适用的 便于查找 有好多的内容 vb函数 很适用的 便于查找 有好多的内容
  • vb简单实现运算符优先级的计算器

    千次阅读 2016-06-18 23:59:56
    设计了一个非常简易的计算器(其中利用栈实现了运算符优先级) 【界面如下】 组成包括Label控件2个,其中一个用来显示数学表达式,一个显示当前操作数字; 按钮17个,分别为10个数字0~9,小数点,四则运算按钮,...

    尝试写了一个计算器,VB大作业。从来没有接触过vb语言,只能硬着头皮上了。所幸窗体设计与C#相似。

    设计了一个非常简易的计算器(其中利用栈实现了运算符优先级)

    【界面如下】


    组成包括Label控件2个,其中一个用来显示数学表达式,一个显示当前操作数字;

    按钮17个,分别为10个数字0~9,小数点,四则运算按钮,等号按钮,清零按钮;

     

    【设计思路】

    一开始实现的是只能操作一个运算符:比如输入5+9+6,再按等号输出的是15;

    后来想要实现连续运算的功能,就利用栈数据结构,把算术符号的优先级考虑进去。


    【原理】


    【实现逻辑】

    1.       构建两个栈,符号栈和数据栈,利用数组实现,满足先进后出;

    2.       界面按钮控件点击事件:

    1)     数字:0 <限制不能在首位输入多个0>

    2)     数字:1-9 <在label上显示>

    3)     小数点 <不能连续输入多个小数点,输入小数点后将该空间可编辑状态设置false,点击其他按钮后恢复true>

    4)     运算符号:

    a)     获取XS当前数据,将数据压入数据栈

    b)     将符号压入符号栈

    注:符号栈push子过程中设置循环判断优先级过程,即将置入的符号优先级大于栈顶元素,则跳出循环,压入栈;优先级不大于时,则pop数据栈两个元素与符号栈栈顶元素运算,结果压入数据栈,再判断符号优先级。

    5)     清零:初始化(label显示归零——栈清空——将#压入符号栈)

    6)     等号:

    a)     获取XS当前数据,将数据压入数据栈

    b)     判断符号栈栈顶元素是否为零,运算剩余数据

    c)      得到最终结果显示在XS上,由于得数为-1到1之间不显示小数点前面的0所以额外加分支

    d)     计算3.2*0.8/0.4得到6.400001,这个问题主要是由于浮点数的计算是以2进制计算,加减乘除丢失精度,因此我采取的操作是保留四位小数这样简单粗暴的方法;在网上搜到一篇文章,和这个问题相关:《JavaScript数字精度丢失问题总结》http://www.cnblogs.com/snandy/p/4943138.html

    e)     初始化

    【代码如下】

    Private Sub Form_Initialize()
    Erase fuhao
    fuhao(0) = 0
    fuhaopointer = 1
    Erase shuju
    shujupointer = 0
    End Sub
    
    Dim n As Integer 'n=1已经写入数据,n=2结束运算,n=0继续输入数字;
    Dim m As Integer 'm=运算符种类0#1+2-3*4/
    Dim a As Single 'a,b读入的前后数据
    Dim b As Single
    Dim ab As Single 'ab保存运算后数据
    Dim dy As String '-1到1之间的数不显示前面的零
    Dim fuhao(20) As Integer '符号栈
    Dim fuhaopointer As Long '符号栈长度
    Dim shuju(30) As Single '数据栈
    Dim shujupointer As Long '数据栈长度
    
    Function gettop() As Integer '获取栈顶符号
    gettop = fuhao(fuhaopointer - 1)
    End Function
    
    Function fuhaopop() As Integer '运算符出栈
    fuhaopop = fuhao(fuhaopointer - 1)
    fuhaopointer = fuhaopointer - 1
    End Function
    
    Function shujupop() As Single '数据出栈
    shujupop = shuju(shujupointer - 1)
    shujupointer = shujupointer - 1
    End Function
    
    Public Function result(a As Single, b As Single, m As Integer) As Single '计算
    If m = 1 Then
    result = a + b
    ElseIf m = 2 Then
    result = a - b
    ElseIf m = 3 Then
    result = a * b
    ElseIf m = 4 Then
    result = a / b
    End If
    End Function
    
    Public Function first(m1 As Integer, m2 As Integer) As Boolean '判断优先级,m1栈顶元素,m2即将入栈元素
    If m1 = 0 Then
    first = True
    ElseIf m2 = 1 Or m2 = 2 Then
    first = False
    ElseIf m1 = 1 Or m1 = 2 Then
    first = True
    Else
    first = False
    End If
    End Function
    
    Sub shujupush(number As Single)  '堆栈溢出结束过程
    If stackpointer > 30 Then
    Exit Sub
    End If
    shuju(shujupointer) = number
    shujupointer = shujupointer + 1
    End Sub
    
    Sub fuhaopush(number As Integer)  '堆栈溢出结束过程
    If fuhaopointer > 20 Then
    Exit Sub
    End If
    While first(gettop, number) = False
    b = shujupop
    a = shujupop
    m = fuhaopop
    shujupush (result(a, b, m))
    Wend
    fuhao(fuhaopointer) = number
    fuhaopointer = fuhaopointer + 1
    End Sub
    
    Private Sub Command1_Click() '清零
    XS.Caption = "0"
    screen.Caption = ""
    n = 0
    Command14.Enabled = True
    Erase fuhao
    fuhao(0) = 0
    fuhaopointer = 1
    Erase shuju
    shujupointer = 0
    End Sub
    
    Private Sub Command10_Click() '除号
    a = Val(XS.Caption)
    shujupush (a)
    n = 1
    m = 4
    fuhaopush (m)
    Command14.Enabled = True
    screen.Caption = screen.Caption + "/"
    End Sub
    
    Private Sub Command14_Click() '.小数点 
    screen.Caption = screen.Caption + "."
    If n >= 1 Then XS.Caption = "0"
    n = 0
    XS.Caption = XS.Caption + "."
    Command14.Enabled = False
    End Sub
    
    Private Sub Command2_Click() '7
    screen.Caption = screen.Caption + "7"
    If n >= 1 Then XS.Caption = ""
    n = 0
    If XS.Caption = "0" Then
    XS.Caption = "7"
    Else
    XS.Caption = XS.Caption + "7"
    End If
    End Sub
    
    Private Sub Command18_Click() '=
    screen.Caption = screen.Caption + "="
    Command14.Enabled = True
    b = Val(XS.Caption)
    shujupush (b)
    While gettop <> 0
    b = shujupop
    a = shujupop
    m = fuhaopop
    shujupush (result(a, b, m))
    Wend
    ab = shujupop
    If ab > 0 And ab < 1 Then
    dy = ab
    XS.Caption = "0" + Format(dy, ".####")
    ElseIf ab > -1 And ab < 0 Then
    dy = -ab
    XS.Caption = "-0" + Format(dy, ".####")
    ElseIf Fix(ab) = ab Then
    XS.Caption = ab
    Else
    XS.Caption = Format(ab, ".####")
    End If
    n = 2
    Erase fuhao
    fuhao(0) = 0
    fuhaopointer = 1
    Erase shuju
    shujupointer = 0
    End Sub


    展开全文
  • VB函数大全(包括对象,函数,方法,运算符....)
  • 这是第二次作业了,感觉比第一节课的作业难,而且有些问题需要反复观看视频才能...至于运算符包括常用的加减乘除,还出现了证书除法、模(取余)、还有幂的取值,其中比较陌生的是divmod()同时取得商和余数。 ...

       这是第二次作业了,感觉比第一节课的作业难,而且有些问题需要反复观看视频才能理解,所讲的内容比之前抽象了不少。接着第一节,一开始讲了各种赋值,这个我之前有遇到过,主要包括链式赋值、系列解包赋值、常量的赋值规则,基本上把之前懵懂只知道print()的赋值系统的讲了一下。然后队医数据类型的种类:整数、浮点、布尔、字符串,这些在我大一学习vb的时候都是有说过的,相对比较好理解。至于运算符包括常用的加减乘除,还出现了证书除法、模(取余)、还有幂的取值,其中比较陌生的是divmod()同时取得商和余数。

         整数的类型分为二进制、八进制、十进制、十六进制,这些都还相对好理解。后面出现新的函数int()用于实现类型的转换,浮点型会变成整数类型去掉后面的小数。布尔型True和False与数字1和0之间的转化。其中运算时,整数型加上浮点型会直接变成浮点型。

        除此之外还有增强型赋值运算符,其中的很多运算法则需要自己理解记忆。中间穿插了时间的表示方法,弄懂了时间的起始计算标准,同时跟着老师进行了时间计算的简单应用。另外回顾了上次课海龟函数,并且花了坐标并计算起始位置与终点位置的距离。

    import turtle
    import math
    #定义多个点坐标
    
    x1,y1=100,100
    x2,y2=100,-100
    x3,y3=-100,-100
    x4,y4=-100,100
    
    #绘制图形
    turtle.penup()
    turtle.goto(x1,y1)
    turtle.pendown()
    turtle.goto(x2,y2)
    turtle.goto(x3,y3)
    turtle.goto(x4,y4)
    
    #开始计算起始点与终点的距离
    
    distance=math.sqrt((x1-x4)**2+(y1-y4)**2)
    turtle.write(distance)
    

     这是对应的代码,运行结果如下:

    剩下的就是关于一些比较运算符,逻辑运算符,同一运算符,其中同一运算符要和比较运算符中==区分开,涉及到对象的定义。

    比较特殊的是整数的缓存问题,在-5到任意整数都是可以认为是同一对象。

    比较难记的是复合赋值运算符,为了提高效率使用的一种运算符,运算符的优先级问题也不好记,但是应该用的时候再来查找吧。

    后面就讲到常用的字符串的问题,字符串在代码的编写过程中是十分重要的,主要注重的是逻辑的思维,对于数学和英语要求并不高。本质是字符序列,一般来说在python中字符串是不可变的,我们无法对原字符串进行任何修改。

    字符串的编译采用是Unicode,使用ord()和chr()可以完成字符串和Unicode之间的转化。同时字符串可以用单引号和双引号进行创建,三个单引号或是三个双引号可以创建多个多行字符串。另外就是空字符串的建立与利用len()来计算字符串的长度。转义字符的使用方便我们进行表示单引号或是双引号本身的含义,另外就是退格与换行还有回车以及横向制表符,把本身特殊的含义的符号,转变成本身的含义。

    字符串的拼接可以把两个字符串用加号进行连接,如果是数字类型是运算法则,如果类型不一致就会出现异常。

    字符串的复制使用*加数字来进行表示的。

    字符串的不换行打印是通过“end=”来进行表示的。

    也可以利用input()函数来通过控制台兑取字符串。

    str()函数可以实现数字转化成字符串。

    使用[]提取字符串中的字符,字符串的本质就是字符序列,可以在字符串后面加上[]来进行表示,其中要清楚正向搜索和反向搜索的数字编号顺序。

    replace()实现字符串替换,字符串不可替换,但是可以创建新的字符串,eg:a=a.replace('','')。

    字符串的切片操作是把字符串按照一定规律的字符提取出来,其中用:表示,[起始偏移量:种植偏移量:步长]来表示。

    其中还涉及到倒序输出字符串的代码:[::-1]

    另外涉及到字符串的分割和合并,使用split()与join()符号,这里的合并join()要和前面的+合并区分,join()可以提高运算时间,跟着老师u做了代码进行比较两种合并所用的时间。

    import time
    time01=time.time()    #起始时间
    a=''
    for i in range(10000000): #循环一百万次生成随机数字
        a+='sxt'
    time02=time.time()  #终止时间
    print('运算时间:'+str(time02-time01)) #计算运行的时间
    time03=time.time()  #起始时间
    li=[]
    for i in range(10000000):
        li.append('sxt')
    a=''.join(li)
    time04=time.time()  #终止时间
    print('运算时间:'+str(time04-time03))

    运算结果如下:

    可以看出join()可以明显提高运算效率,解决较多时间。

    另外就是字符串的驻留机制和字符串的比较,这里要清楚什么情况下的是同一字符串,什么情况下id()是不相同的。

    还有就是成员操作符就是看某个字符在不在另一个字符当中。

    字符串的常用方法的查找:计算长度的len(),指定字符串的开头a.startswith(''),指定字符串结尾a.endswith(''),查找出现第一次出现某个字符的位置a.find(''),最后一次出现某个字符的位置a.rfind(),某个字符串出现的次数a.count(''),判断字符全是字母或是数字a.isalnum().

    字符串去首尾信息:strip()函数,去首的为lstrip(),去尾rstrip()。

    字符串大小写的转化:首字母大写a.capitalize(),每个字母首字母都是大写a.title(),所有的字符串都是大写a.upper(),所有字符串都是转化成小写a.lower(),大小写转换a.swapcase()。

    字符串的格式排版:center(),ljust(),rjust().

    检测字符串是付为数字isalnum(),检测字符串是否有字母组isalpha(),检测字符串是否只由数字组成isdigit(),字符串是否含有空白符isspace(),是否全为大写isupper(),是否全为小写islower()。

    字符串的格式化,format()的用法,使用{}来进行比较选择填充的,其中填充与对齐,相对来说比较常用居中、左对齐、右对齐怎么表示这个地方有点难记忆理解需要多花点时间。

    数字的格式化:浮点型通过数字f,整数通过d进行需要的格式化。

    可变字符串:字符串是不可变对象,不支持原地修改,需要修改其中的值,需要智能创建新的字符串对象。需要引入io.stringIO对象或是array模块。

     

    展开全文
  • VB教程下载

    2008-04-07 10:26:07
    VB教程,包括:函数、方法、特性、对象、运算符、属性、语句等。
  • VB 知识小结

    2013-04-11 10:57:00
    VB下,都可以用"+"运算符,进行运算 2、"&"--强制连接符使用两种情况 (1)、可为“字符型”连接 (2)、可为“数值型”连接(包括10、8、16进制,当是数值型时,系统自动转换为“数字字符”)...

    最近在用VB开发的时候,做点知识的小结:

    1、整型常量包括

    (1)、十进制:15

    (2)、八进制:&O13

    (3)、十六进制:&H0F

    在VB下,都可以用"+"运算符,进行运算

    2、"&"--强制连接符使用两种情况

    (1)、可为“字符型”连接

    (2)、可为“数值型”连接(包括10、8、16进制,当是数值型时,系统自动转换为“数字字符”)

    3、16进制和字符串间的相互转换(2个函数)

    (1)、Hex(ASC("你"))=C4E3

    (2)、CHR(&HC4E3) = 你

    4、Cstr()函数作用

    作用:将里面的参数转换为“string 字符串”数据

    5、mscomm串口控件

    mscomm1.input = ...

    .......

    mscomm1.output = ...

    其实,发送和接收都是以“一个字节”,恰好是16进制,所以以16进制进行数据的收发,更加利于数据的处理。

     

    最近开发比较忙,所以没有什么时间写自己的博客,今天抽出点时间,做点说明,怕久了以后容易忘记

     

     

     

     

     

     

     

     

    转载于:https://www.cnblogs.com/xinyuyuanm/archive/2013/04/11/3013924.html

    展开全文
  • C语言的运算符包括的范围非常的大,不仅包括括号以及其他类型的运算处理,而且也能够具有较强的一致性,可以在不同的程序上进行C编程。 第二,Java技术。Java技术的应用也非常的广泛,可以在跨平...
    45a7153748b9e0e35ce6e722ee5f7cb7.png

    当下计算机软件开发技术主要涉及到以下三方面的应用:

      第一,C语言技术。C语言作为计算机软件开发技术的基础技术,起步相对较早,而且应用相对比较广泛,当下C语言技术已经越来越成熟,可以应用在多种操作系统当中。C语言的运算符包括的范围非常的大,不仅包括括号以及其他类型的运算处理,而且也能够具有较强的一致性,可以在不同的程序上进行C编程。

      第二,Java技术。Java技术的应用也非常的广泛,可以在跨平台应用软件中进行开发和使用,该项技术的特点是安全性比较强,而且具有很高的通用性。很多的计算机应用软件都能够通过Java技术来进行开发。Java技术不仅继承了C语言的核心技术,另外也能够改进C语言编程中存在的一些错误,进一步增加了垃圾回收器功能,从而减少了程序员为内存管理存在的困扰,同时Java的源代码编译可以在任何无格式的纯文本编辑器中进行操作,所以编辑起来比较的方便快捷,而且也已经发展成为一种主流的技术。

    第三,VB技术。VB技术也是由微软公司推出的一种软件编程语言,当下已经成为世界上使用最多的一种软件开发语言。VB不仅打破了传统的编程界面,而且可以实现图形可视化的操作界面,可以实现对各种企业软件的快速开发,比如,优化大师等相关软件。

    展开全文
  • 运算符包括:+、-、*、/、=、>、<等;可以考虑更复杂情况>=、、!= ;单词种别码为4。 分隔符包括: “,”“;”“(”“)”“{”“}”等等, 单词种别码为5。 (四) 程序思路(仅供参考): 0. 定义部分:定义...
  • VB课程设计俄罗斯方块

    热门讨论 2011-02-25 10:46:55
    为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用VB语言开发一个经典的俄罗斯方块游戏。 工程概况 1.1 项目名称 俄罗斯方块游戏 1.2 设计平台 VB 全称...
  • VB--5·1第一天

    2010-05-04 16:01:00
    上午:VB总结:下图是用mindmanager制作的VB总结mdb:常用控件的分类: 属性和过程:方法和过程事件过程、Function过程和过程:VB总结大图: 分歧如下:数据包括:数据类型、变量、常量、运算符、表达式等几部分,...
  • 其主要课程内容包括VB程序设计语言概述,VB集成开发环境简介,面向对象程序设计方法简介,VB语法基础(基础语法、程序结构、数组、子程序和函数等),各种常用控件的使用,以及在图形、文件操作和数据库应用等方面的...
  • 微软 VB2010 源码包

    2013-05-22 02:21:18
    VBLanguage:突出显示一些 Visual Basic 语言功能,包括泛型、运算符重载和 Using 关键字 VBOOP:演示可用于面向对象编程的选项 XMLComments:演示 Visual Basic 的 XML 注释功能   LINQ 示例 LINQ 示例存储在 ...
  • ' 条件运算符包括:> = < >= <= <> , like(正则表达式) ' '附注: ' 使用此函数,需要在文件中引用正则表达式脚本 Microsoft VBScript Regular Expressions x.x ' (根据不同的电脑配置和环境此处会有差异) '算法...
  • 这是所有运算符的真值表,包括Boolean和Bitwise。使用它们的最佳时间是当您映射您的逻辑并意识到您有一个接受两个输入的函数,并且与这些运算符具有相同的输出时:)--------------------------------------------------...
  • Excel宏与VBA 程序设计实验指导1 ...2.熟练使用ExcelVBA编辑环境,掌握VBA的编辑工具VBE的...3.熟练掌握VBA的基础语法和语句,包括对象、属性和方法,运算符的使用,常用语句和变量的使用。 二、知识要点...
  • 包括:加,减,乘,除,乘方,开N次方,三角函数,反三角函数,双曲三角函数,反双曲三角函数等。 2) 表达式运算,本程序没有采用常用计算器的边输入边计算,而是输入完所有数据或算式后,解析表达式,分解运算符...
  • 第2~6篇为VB 2008专题应用程序开发实例,通过19个专题领域实例,详细深入地介绍了VB 2008各种领域的应用开发技术和技巧,具体包括:数据库应用开发实例、网络与通信开发实例、多媒体应用开发实例、图形图像处理实例...
  • PHP中变量为什么要用$?

    千次阅读 2014-08-10 17:36:02
    2、运算符操作数(包括VB中的赋值语句) 3、数组下标(包括PHPkey标) 能产生值(数和字符串)的位置 1、简单变量 2、数组元素 3、结构成员 4、函数 5、常量(一般字面常量、C和PHP中define常量、VB中const常变量)...
  • 计算机二级包括二级C,二级C++,二级VB,二级VFP,二级Access,二级Java,二级office,二级python。其需要学习的内容如下:二级CDOS命令,计算机组成原理,多媒体、数据库操作、计算机网络、C语言程序设计、上机考试...
  • 计算机二级包括二级C,二级C++,二级VB,二级VFP,二级Access,二级Java,二级office,二级python。其需要学习的内容如下:二级CDOS命令,计算机组成原理,多媒体、数据库操作、计算机网络、C语言程序设计、上机考试...
  • 01计算机二级包括二级C、二级C++、二级VB、二级VFP、二级Access、二级Java、二级office。1、二级C:DOS命令,计算机组成原理,多媒体、数据库操作、计算机网络、C语言程序设计、上机考试。2、二级C++:按照新大纲...
  • Java学习之基础语法

    热门讨论 2018-04-08 16:51:34
    前言  Java中许多的基础知识,与C#、VB语言多少有些异曲同工之妙,都是涉及到常用的符号、变量、...有关符号里面包括运算符、关键字和标识符,表达式语句里面有方法、变量、分支循环。 有关符号 一、标识
  • 图解SQL视频

    2013-09-28 20:27:42
    其实对于数据库的学习,就比照我们学习的VB的面向过程和基于对象两方面来说 来说,对应着来看不就是基础数据知识(包括数据类型,运算符……),和数据库的对象(包括表、视图……)。明白了这些之后唯一多出来的一...
  • 语言基础部分其实和VB大同小异,主要包括:数据类型、数组、控制语句、运算符和表达式;面向对象部分从面相对象的三大特性:封装、继承、多态;还有接口、委托、事件、泛型等。 一、语言基础部分  语句控制:...
  • C#总结(一)

    2013-03-05 21:40:59
    语言基础部分其实和VB大同小异,主要包括:数据类型、数组、控制语句、运算符和表达式;面向对象部分从面相对象的三大特性:封装、继承、多态;还有接口、委托、事件、泛型等。 一、语言基础部分  语句控制:...
  • ASP.NET 2.0(C#)基础教程

    2011-05-20 15:26:21
    本书将介绍C#基本语法(包括变量、数据类型、表达式、运算符等)、 面向对象C#编程技术(包括自定义类和对象、对象的封装性、对象的继承性 和对象的多态性)、ASP.NET Web页面技术(包括服务器控件的使用、验证 ...
  • C程序设计语言(第2版·新版中文)

    热门讨论 2010-10-22 19:43:48
    全面、系统地讲述了C语言的各个特性及程序设计的基本方法,包括基本概念,类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、UNIX系统接口、标准库等内容。 目录   出版者的话 专家指导委员...
  • 5.1.1 与VB6.0不同概念的WindowsForms 5.1.2 窗体共享成员 5.2 窗体属性 5.2.1 窗体程序外观属性 5.2.2 窗体大小属性 5.2.3 窗体位置属性 5.3 窗体方法 5.4 窗体事件 本章重点整理 本章习题 第6章 窗体应用程序的...

空空如也

空空如也

1 2
收藏数 40
精华内容 16
关键字:

vb运算符包括