| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1278 人关注过本帖
标题:摆个擂
只看楼主 加入收藏
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4943
专家分:30067
注 册:2008-10-15
收藏
得分:0 
今天再测试了一下,在我的电脑上 lowxiong 的代码比我的代码快 7 毫秒左右。
测试方法:
去掉 显示部分,然后其它不变,循环调用 100次,然后看最后的计时。

程序代码:
Dim t1 As Long, t2 As Long
Dim t3 As Long, t4 As Long
Dim i As Long

t1 = timeGetTime
For i = 1 To 100
Cls
Call Command1_Click
Next i
t2 = timeGetTime
For i = 1 To 100
DoEvents
Next i

t3 = timeGetTime
For i = 1 To 100
Cls
Call Command2_Click
Next i
t4 = timeGetTime

For i = 1 To 100
DoEvents
Next i

Cls
Print "1"; t1; t2, t2 - t1
Print "2"; t3; t4, t4 - t3


授人于鱼,不如授人于渔
早已停用QQ了
2013-04-17 08:41
zhengang1026
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:136
专家分:409
注 册:2013-2-6
收藏
得分:0 
就我等新手看,lowxion版主最初的代码最好理解易懂。真佩服几位版主对VB的熟练掌握,同时也对他们精益求精的精神表示敬佩!
2013-04-17 16:00
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
看到wp版的“大家晒一晒自己的代码啊”和小z版的“两位数乘三位数等于四位数并且这九个数都不重复”
就是“123456789”9个数,取2个组成一个两位数,取3个组成一个三位数,这两个数的积就是剩下的那四位数。

貌似着俩不等价啊 怪不得你们的答案组数少啊 没有0。。。。
2013-04-17 16:04
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
顺便膜拜各位的VB水平 虽然我不大喜欢VB。。。
2013-04-17 16:05
zhengang1026
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:136
专家分:409
注 册:2013-2-6
收藏
得分:0 
请问怎么才能测到毫秒级?我分别在程序开始和结束位置用了t = timeGetTime、 MsgBox timeGetTime - t ,可还是显示0秒啊,难道是我的电脑太快?
2013-04-18 08:59
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4943
专家分:30067
注 册:2008-10-15
收藏
得分:0 
你申明了 timeGetTime 这个函数吗???

如果你没申明的话,也不想申明的话,那么你就用
timer 这个函数吧。
timer 函数,返回的是 秒,但会带二位小数,也就是精度是 10毫秒。
timeGetTime API函数,返回的是 毫秒,不带小数,精度是 1毫秒。

t=timer
msgbox timer-t

结果带小数,乘以1000,就是 毫秒了,但精度只有 10毫秒。

[ 本帖最后由 风吹过b 于 2013-4-18 10:05 编辑 ]

授人于鱼,不如授人于渔
早已停用QQ了
2013-04-18 10:02
zhengang1026
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:136
专家分:409
注 册:2013-2-6
收藏
得分:0 
哦,我还当timeGetTime 是VB内部函数呢,谢谢指教。
2013-04-18 12:33
xbj_hyml
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:24
专家分:114
注 册:2012-11-28
收藏
得分:0 
学习中...
    顺便飘过...

懂点基础--好多控件不知道--NB代码不会写--所以一直求教中...
2013-04-18 12:36
好聚好散
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:138
专家分:123
注 册:2012-12-4
收藏
得分:0 
高手

无节操,无真相
2013-04-18 12:38
ease1000
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2013-5-11
收藏
得分:0 
看了前面几位的代码都感觉有点复杂,可读性不强
为什么不用简单点的呢:
Private Sub Command1_Click()
    For i = 12 To 98
        For j = 123 To 987
            If i * j < 10000 Then
                n = i & j & i * j
                For k = 1 To 9
                    If InStr(n, k) = 0 Then Exit For
                Next k
                If k > 9 Then Print i & "*" & j & "=" & i * j
            End If
        Next j
    Next i
End Sub
2013-05-14 18:13
快速回复:摆个擂
数据加载中...
 
   



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

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