| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2129 人关注过本帖
标题:VB编程:有5、6、8、9四个数字,能够组成多少个互不相同且无重复数字的三位数 ...
只看楼主 加入收藏
xiaoqing2014
Rank: 1
来 自:浙江杭州
等 级:新手上路
帖 子:17
专家分:0
注 册:2014-3-7
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
VB编程:有5、6、8、9四个数字,能够组成多少个互不相同且无重复数字的三位数?
Dim a(3) as integer
Dim i%,j%,k%,m%,str$
a(0)=5:a(1)=6:a(2)=8:a(3)=9:m=0:str=""
for i=0 to 3
for j=0 to 3
for k=0 to 3
if i<>j and j<>k and i<>k then
m=m+1
next k
next j
next i
print m
这是我自己编的 ,但我不知道怎么把这三位数输出来,求教!!!
2014-03-07 15:32
xlhcy2014
Rank: 2
等 级:论坛游民
帖 子:33
专家分:81
注 册:2014-2-6
收藏
得分:10 
程序代码:
Dim a(3) As Integer
Dim i%, j%, k%, m%, str$
a(0) = 5: a(1) = 6: a(2) = 8: a(3) = 9: m = 0: str = ""
For i = 0 To 3
For j = 0 To 3
For k = 0 To 3
If i <> j And j <> k And i <> k Then
str = CStr(a(i) * 100 + a(j) * 10 + a(k))
Print str
m = m + 1
End If
Next k
Next j
Next i
Print m
一共24个

[ 本帖最后由 xlhcy2014 于 2014-3-7 17:53 编辑 ]
2014-03-07 17:49
owenlu1981
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:13
帖 子:211
专家分:1130
注 册:2013-5-17
收藏
得分:5 
Private Sub Command1_Click()
Val = ""
A(0) = 5
A(1) = 6
A(2) = 8
A(3) = 9
n = -1
For i = 0 To 3
    For j = 0 To 3
        If j <> i Then
            For k = 0 To 3
                If k <> i And k <> j Then
                    NewVal = True
                    If n = -1 Then
                        NewVal = True
                    Else
                        For m = 0 To n
                            If A(i) * 100 + A(j) * 10 + A(k) = B(m) Then
                                NewVal = False
                            End If
                        Next m
                    End If
                    If NewVal = True Then
                        n = n + 1
                        B(n) = A(i) * 100 + A(j) * 10 + A(k)
                    End If
                End If
            Next k
        End If
    Next j
Next i
         
For m = 0 To n
    Val = IIf(Val = "", CStr(B(m)), Val & " " & CStr(B(m)))
Next m

Val = "共 " & (n + 1) & " 个值" & vbCrLf & Val
MsgBox Val
End Sub
2014-03-07 22:35
xiaoqing2014
Rank: 1
来 自:浙江杭州
等 级:新手上路
帖 子:17
专家分:0
注 册:2014-3-7
收藏
得分:0 
谢谢!不过三楼朋友的程序好复杂,我有些看不懂!
2014-03-08 13:53
owenlu1981
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:13
帖 子:211
专家分:1130
注 册:2013-5-17
收藏
得分:5 
以下是引用xiaoqing2014在2014-3-8 13:53:10的发言:

谢谢!不过三楼朋友的程序好复杂,我有些看不懂!



呵呵 ,其实就多加了一个循环判断 (去除因4个数字中有重复而造成的3位数重复)
2014-03-08 15:11
xiaoqing2014
Rank: 1
来 自:浙江杭州
等 级:新手上路
帖 子:17
专家分:0
注 册:2014-3-7
收藏
得分:0 
哦!谢谢!
2014-03-09 14:38
快速回复:VB编程:有5、6、8、9四个数字,能够组成多少个互不相同且无重复数字的三 ...
数据加载中...
 
   



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

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