CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

溢出问题,初学VB.

楼主ainibaobao(牛牛宝宝)2005-05-15 10:26:43 在 VB / 基础类 提问

下面是我自己编的VB的小程序,就是不明白为什么会是溢出问题,希望大家给点意见.谢谢.  
          程序1:  
          Private   Sub   Command1_Click()     '按钮事件  
          Dim   sum   As   Double       '每项的和  
          Dim   item   As   Double     '每项的值  
          Dim   n   As   Integer  
          sum   =   2   *   2   /   3  
          n   =   4  
          item   =   2   *   2   /   3  
          Do   While   item   >   0.0000001  
                item   =   CDbl((n   *   n)   /   ((n   -   1)   *   (n   +   1)))  
                sum   =   sum   *   item  
                n   =   n   +   2  
          Loop  
          Print   sum  
          End   Sub  
          程序2:  
          Private   Sub   Command1_Click()  
          Dim   i   As   Integer  
          Dim   j   As   Integer  
          Dim   sum   As   Integer  
          Dim   k   As   Long  
          sum   =   0  
          For   i   =   1   To   10  
                k   =   1  
                For   j   =   1   To   i  
                      k   =   k   *   j  
                Next   j  
              sum   =   sum   +   k  
          Next   i  
          Print   sum  
        End   Sub  
  以上是我的程序,顺便问一句VB里面能不能设置成和VC里面一样自动排齐代码的.怎么做?  
   
  问题点数:40、回复次数:8Top

1 楼ainibaobao(牛牛宝宝)回复于 2005-05-15 10:30:54 得分 0

第2题知道了,呵呵.Top

2 楼MmMVP(杜霖:(现在是DooDu的马甲。。))回复于 2005-05-15 10:38:17 得分 40

1。程序算法问题,item无限趋近于1恒有item   >   0.0000001,n无法收敛,又是死循环,当然溢出了!    
   
  Private   Sub   Command1_Click()     '按钮事件  
          Dim   sum   As   Double       '每项的和  
          Dim   item   As   Double     '每项的值  
          Dim   n   As   Long'这里改了  
          sum   =   2   *   2   /   3  
          n   =   4  
          item   =   2   *   2   /   3  
          Do   While   item   -   1   >   0.0000001'这里改了  
                item   =   CDbl((n   *   n)   /   ((n   -   1)   *   (n   +   1)))  
                sum   =   sum   *   item  
                n   =   n   +   2  
          Loop  
          Print   sum  
          End   Sub  
  Top

3 楼MmMVP(杜霖:(现在是DooDu的马甲。。))回复于 2005-05-15 10:41:06 得分 0

你是求pi吧?Top

4 楼ainibaobao(牛牛宝宝)回复于 2005-05-15 10:58:30 得分 0

知道了,谢谢.  
  PI是什么啊?Top

5 楼MmMVP(杜霖:(现在是DooDu的马甲。。))回复于 2005-05-15 11:01:52 得分 0

3.141592653……………………………………………………………………Top

6 楼ainibaobao(牛牛宝宝)回复于 2005-05-15 11:07:20 得分 0

哦...是的..呵呵Top

7 楼ainibaobao(牛牛宝宝)回复于 2005-05-15 11:07:43 得分 0

谢谢...Top

8 楼ainibaobao(牛牛宝宝)回复于 2005-05-15 11:18:01 得分 0

还有一个题有问题.如下:  
       
  Private   Sub   Command1_Click()  
        Dim   a   As   Double  
        Dim   b   As   Double  
        Dim   c   As   Double  
        Dim   d   As   Double  
        Dim   s   As   Double  
        a   =   Tex_a.Text  
        b   =   Tex_b.Text  
        c   =   Tex_c.Text  
        If   (a   <   b   +   c)   And   (a   >   Abs(b   -   c))   Then  
                d   =   (a   +   b   +   c)   /   2  
                s   =   Sqr(d   *   (d   -   a)   *   (d   -   b)   *   (d   -   c))  
                Picture1.Print   "三角形的面积是:"  
                Picture1.Print   s  
        Else  
                Picture1.Print   "输入的三条边不能构成三角形!"  
        End   If  
  End   Sub  
  如果Tex_a.Text中的内容为空的话就会出错,我如何判断Tex_a.Text中的内容为空了?Top

相关问题

  • vb初学者
  • 初学vb,help me!!
  • 初初学vb , 再问!!
  • 初学VB,菜鸟问题
  • vb初学,有小问题。
  • 初学VB者的问题?
  • 初学VB,小问题
  • vb运算溢出(急)
  • VB提示内存溢出
  • 帮帮我!VB初学者问

关键词

  • tex
  • 溢出
  • sum
  • dim
  • picture
  • double
  • 程序
  • print
  • item
  • 问题

得分解答快速导航

  • 帖主:ainibaobao
  • MmMVP

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo