| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 824 人关注过本帖
标题:求助:谁能帮我做个程序?
只看楼主 加入收藏
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
求助:谁能帮我做个程序?
能一次显示7个不相等的随机整数。

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


Text:用来输入范围;
Picture:用来显示7个随机整数。

[ 本帖最后由 CLT 于 2010-4-3 10:54 编辑 ]
2010-04-02 20:40
Lazycat01
Rank: 2
等 级:论坛游民
帖 子:26
专家分:30
注 册:2010-3-11
收藏
得分:7 
随机数的范围啊
2010-04-02 21:35
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
收藏
得分:0 
回复 楼主 CLT
要求:必须7个不同的随机整数;
可用文本框控件输入范围。
2010-04-03 07:35
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
收藏
得分:0 
回复 2楼 Lazycat01
要求:必须7个不同的随机整数。
用文本框控件输入范围。
图片附件: 游客没有浏览图片的权限,请 登录注册


[ 本帖最后由 CLT 于 2010-4-3 10:55 编辑 ]
2010-04-03 07:37
xiaomarn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:348
专家分:2026
注 册:2009-3-18
收藏
得分:7 
Option Explicit
Dim max As Integer, min As Integer

Private Sub Command1_Click()
    Dim a(6) As Integer
    Dim i As Integer
    min = CInt(Val(Text1))
    max = CInt(Val(Text2))
    If max < min Or (max - min) < 7 Then
        MsgBox "error"
        Exit Sub
    End If
    Randomize
    For i = 0 To 6
        a(i) = CInt(min + Rnd * (max - min))
        If equal(a(), i) Then
            MsgBox "i=" & i & "  " & a(i)
            a(i) = notEqual(a(), i)
        End If
    Next
    For i = 0 To 6
        Debug.Print a(i)
    Next
End Sub

Private Function equal(a() As Integer, pos As Integer) As Boolean
    Dim i As Integer
    For i = 0 To pos
        If a(pos) = a(i) And pos <> i Then
            equal = True
            Exit Function
        End If
    Next
    equal = False
End Function

Private Function notEqual(a() As Integer, pos As Integer) As Integer
    Dim i As Integer, j As Integer, b(100) As Integer
    For i = 0 To CInt(Val(max - min))
        b(i) = CInt(min) + i
    Next
    For i = 0 To pos - 1
        For j = 0 To CInt(Val(max - min))
            If a(i) = b(j) Then
                 b(j) = CInt(min) - 1
            End If
        Next
    Next
    For i = 0 To CInt(Val(max - min))
        If b(i) > CInt(min) Then
            notEqual = b(i)
        End If
    Next
End Function
程序比较幼稚,冗余,望高手不要见笑
2010-04-03 10:30
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
收藏
得分:0 
回复 5楼 xiaomarn
图片附件: 游客没有浏览图片的权限,请 登录注册

可以照着这个界面去做吗?谢了
2010-04-03 10:56
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
收藏
得分:0 
回复 5楼 xiaomarn
对哦!你编都编错,还说什么程序幼稚,别了吧!
2010-04-04 10:00
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
5楼的程序结果正确.
楼主自己没去测试,

他是显示在 调试窗口里,

你前面题目没说清楚时弄的.结果非常好.


授人于鱼,不如授人于渔
早已停用QQ了
2010-04-04 11:55
CLT
Rank: 2
等 级:论坛游民
帖 子:35
专家分:10
注 册:2010-4-1
收藏
得分:0 
回复 8楼 风吹过b
可我弄到VB里总出错

    min = CInt(Val(Text1))
    max = CInt(Val(Text2))
这里VB总说没定义变量,老错,我弄两个文本框出来然后在这后面加“.text”却别的地方又出错。

[ 本帖最后由 CLT 于 2010-4-4 22:42 编辑 ]
2010-04-04 17:15
快速回复:求助:谁能帮我做个程序?
数据加载中...
 
   



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

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