| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 823 人关注过本帖
标题:VB编写一个简单的计算机。如图!谢谢谢谢啦
只看楼主 加入收藏
enger120120
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-5-15
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
VB编写一个简单的计算机。如图!谢谢谢谢啦
做一个类似下图界面的简单计算器。

  提示:(1)控件数组cmdNum包括10个控件,下标分别与0~9这10个数字对应。按下控件数组的某个按钮时,用其元素的下标值对应组成数据。

        (2)cmdCount也是包含了四个元素的控件数组,分别表示”+”、”-”、”*”、”/”运算符,可用Select Case语句判断并做出不同的操作。

         (3)可设置逻辑变量fNext,判断输入的是第一个还是第二个操作符,为0时表示第一个操作数,1时表示第二个操作数。

图片附件: 游客没有浏览图片的权限,请 登录注册


cmdcount.zip (1.43 KB)

附件中我已经排好了 界面了。搞不懂 第一个操作数 和第二个操作数间的   如何分开

[ 本帖最后由 enger120120 于 2012-5-23 19:55 编辑 ]
搜索更多相关主题的帖子: 元素 
2012-05-23 14:54
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:20 
程序不看了。我说一下实现办法。
输入数字部分你应该没问题了。

1、输入数字。这时,不用管 fNext ,什么都不用管。
2、输入符号。这里,如果
  fNext = 0 ,表示刚输入的数字是第一个数,那么定义一个 全局变量 ,把它保存起来。同时用另一个全局变量 保存 符号 。fNext 置 1, 文本框置空,准备输入第二个数
  fNext = 1 , 表示刚输入的数字是第二个数,那么根据 前面保存的 全局变量 和 前面保存的符号,与刚输入的第二个数进行运算。
              然后 把运算结果 放到 全局变量中,当作第一个数看待,同时保存当前符号。fNext 置1 , 文本框置空,准备输入第二个数
3、如果按下 等号键 ,如果
  fNext =0 ,不处理,忽略。
  fNext =1 ,文本框中是第二个数,进行计算,把结果显示到文件框中,同时 fNext 置 0,表示已经运算完毕。
4、按下清零键。
  fNext 置 0 ,文本框内容 置 空

希望你能自己研究出来。
这个算稍动一动脑筋的题目了。

授人于鱼,不如授人于渔
早已停用QQ了
2012-05-23 15:59
enger120120
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-5-15
收藏
得分:0 
回复 2楼 风吹过b
嗯嗯。。。感谢大大了。。。
无以为报,为有送上 飞吻一只  
2012-05-23 17:30
enger120120
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-5-15
收藏
得分:0 
回复 2楼 风吹过b
程序代码:
Dim a As Integer, b As String, fnext As Integer
Dim d As Double
Private Sub c_Click()
If fnext = 1 Then
  Select Case b
         Case "+"
              d = Val(Text1) + a
         Case "-"
              d = a - Val(Text1)
         Case "*"
              d = a * Val(Text1)
         Case "/"
              If Val(Text1) = 0 Then
                MsgBox "0"
               Else
                d = a / Val(Text1)
              End If
  End Select
End If
If fnext = 1 Then
    Text1 = d
    fnext = 0
End If
End Sub

Private Sub c1_Click(Index As Integer)
  Text1 = Text1 & c1(Index).Caption
End Sub


Private Sub cmdcount_Click(Index As Integer)
If fnext = 0 Then
    a = Val(Text1)
    b = cmdcount(Index).Caption
    fnext = 1
    Text1 = ""
End If
End Sub
基本的弄出来 的。就是连续求 ,如 1+1+1 变成 1+11了。。。烦呀
c是 = 号
c1是 数字
cmdcount 是 加减乘除的


[ 本帖最后由 enger120120 于 2012-5-23 19:57 编辑 ]
2012-05-23 19:54
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:0 
这代码 1+1+1不适合

无知
2012-05-23 23:19
快速回复:VB编写一个简单的计算机。如图!谢谢谢谢啦
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017351 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved