一道数学编程题

来源:百度知道 编辑:UC知道 时间:2024/09/22 10:13:20
需要将 1 . 2 . 3 . 4 . 5 . 6....11 . 12 . 13 ...... 21 . 22 . 23... 31...41...直到50` 分别用 0-9各组合5位数相加`` 把每个数字的各有多少种加法列出来`每相加的5位数字不能重复`颠倒顺序没关系`比如和为1 .用5位数字加的结果等于1`有: 0+0+0+0+1=1

和为2 有: 0+0+0+1+1=2 0+0+0+0+2=2

和为3有: 0+0+1+1+1=3 0+0+0+1+2=3 0+0+0+0+3=3

和为4有:..............................

和为5有:..............................

一直到50`

大家能用vbscript 编程生成 asp 文件

注意要有换行啊

dim y(51,900),kk(51)
for i=1 to 51
kk(i)=0
next
mm=3
for i=1 to mm+1
for j=1 to mm+1
for k=1 to mm+1
for m=1 to mm+1
for n=1 to mm+1
if not (i=j and i=k and i=m and i=n) then
nn=i+j+k+m+n-5
kk(nn+1)=kk(nn+1)+1
y(nn+1,kk(nn+1))=CStr(nn)+"="+CStr(i-1)+"+"+CStr(j-1)+"+"+CStr(k-1)+"+"+CStr(m-1)+"+"+CStr(n-1)
end if
next
next
next
next
next
for i=1 to mm*5
for j=1 to kk(i)
Response.Write("结果为 "+y(i,j)+"---第"+CStr(j)+"个----总共"+CStr(kk(i))+"个")
next
next

应为数据太大,我的机器缓冲不够,调整为1,2,3的情况,如果要算1,2,3,4,5,6,7,8,9的情况,请把mm设为9即可

楼主真逗。按你的条件,你加个大于45的数出来我看看。