以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]试卷分包的问题求解?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=76820)

--  作者:zgjmost
--  发布时间:2015/11/5 15:55:00
--  [求助]试卷分包的问题求解?
在这个程序里想把每一科的试卷分包成小包,例如把  教学心理学 100份 分成3个31,加1个11,那么袋31份 处填写3  袋11份 处填写 1,最后合计份数为31*3+11*1=104

统计学 47份 分成1个31份,1个11份,1个5份,那么分别填写1,1,1,最后合计份数为31*1+11*1+5*1=47份

这个分拆程序怎么写?请各位老师帮忙。


--  作者:zgjmost
--  发布时间:2015/11/5 15:57:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:11.jpg
图片点击可在新窗口打开查看

--  作者:zgjmost
--  发布时间:2015/11/5 15:59:00
--  
这是程序
--  作者:zgjmost
--  发布时间:2015/11/5 16:00:00
--  
怎么上传不了程序?
--  作者:大红袍
--  发布时间:2015/11/5 16:08:00
--  
Dim ary() As Integer = {31, 11, 5}
Dim num As Integer = 100
For i As Integer = 0 To num \\ ary(0)
    For j As Integer = 0 To num \\ ary(1)
        For k As Integer = 0 To num \\ ary(2)
            If ary(0) * i + ary(1) * j + ary(2) * k = num Then
                output.show( i & " " & j &" " & k)
            end if
        next
    next
Next

--  作者:zgjmost
--  发布时间:2015/11/5 16:45:00
--  
 If ary(0) * i + ary(1) * j + ary(2) * k = num Then

不一定等于100




--  作者:大红袍
--  发布时间:2015/11/5 16:47:00
--  
Dim ary() As Integer = {31, 11, 5}
Dim num As Integer = 100
For i As Integer = 0 To num \\ ary(0)
    For j As Integer = 0 To num \\ ary(1)
        For k As Integer = 0 To num \\ ary(2)
            Dim sum As Integer = ary(0) * i + ary(1) * j + ary(2) * k
            If math.abs(sum - num) <= 4 Then
                output.show( i & " " & j &" " & k)
            end if
        next
    next
Next