| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 553 人关注过本帖
标题:求帮忙一个排列组合程序
只看楼主 加入收藏
xiaojun7707
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-10-29
收藏
 问题点数:0 回复次数:2 
求帮忙一个排列组合程序
条件:a,b,c,d四个整数,a<b,c<d
a的取值范围3-40
b的取值范围35-100
c的取值范围10-45
d的取值范围40-100
f=(b/a)*(d/c)
如果7.70<f<7.75
则列出a,b,c,d
应该不止一组数据。
这个程序应该怎么写啊,求高手帮忙,
2014-10-29 09:11
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
的确不止一组,开始直接输出,结果超出屏幕。
然后使用 文本框保存结果,结果卡死。

最后使用临时文件来保存。代码自己看。

程序代码:
Private Sub Command1_Click()
Dim a&, b&, c&, d&                                              '四个循环变量
Dim f As Single                     '中间值
Dim fs As String
fs = App.Path                       '生成临时文件路径
If Right(fs, 1) <> "\" Then         '生成临时文件名
    fs = fs & "\tmp.txt"
Else
    fs = fs & "tmp.txt"
End If

Open fs For Output As #1            '打开临时文件
For a = 3 To 40                     '四个循环
    For b = 35 To 100
        For c = 10 To 45
            For d = 40 To 100
                If b > a And d > c Then             '符合条件
                    f = (b / a) * (d / c)           '计算中间值
                    If f > 7.7 And f < 7.75 Then    '在范围中
                        Print #1, "a,b,c,d="; a; b; c; d, "f="; f       '保存结果
                    End If
                End If
            Next d
        Next c
    Next b
Next a
Close #1                            '关闭临时文件
DoEvents                            '确保写完
Shell "cmd /c start " & fs, vbHide  '显示临时文件内容
End Sub

授人于鱼,不如授人于渔
早已停用QQ了
2014-10-29 10:14
xiaojun7707
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2014-10-29
收藏
得分:0 
谢谢大神帮忙,
2014-10-29 10:25
快速回复:求帮忙一个排列组合程序
数据加载中...
 
   



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

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