注册 登录
编程论坛 ASP技术论坛

计算问题

kombel 发布于 2011-07-08 15:59, 489 次点击
我想从10到99中 和值为10的显示出来  例28 2+8=10     再得出10到99中有几个数和值为10的
下面是我写的一段代码 怎么显示不了啊
程序代码:
<%dim sum
sum
=0
for i=1to 99
j
=mid((i),1,1)
k
=mid((i),2,1)
a
=","

if j+k=10 then


response.Write(j
&k&a)

end if
next
%>

7 回复
#2
dzt00012011-07-08 16:29
程序代码:
<%
count
=0

for i=10 to 99
if int(i/10)+(i mod 10)=10 then
    Response.Write (i
& "<br />")
    count
=count+1
end if
next

Response.Write (
"数目:"&count)
%>
#3
kombel2011-07-08 16:47
回复 2楼 dzt0001
能解释一下这段是什么意思吗
int(i/10)+(i mod 10)=10
#4
dzt00012011-07-08 17:52
int(i/10) 数字除10,取整数部分,获得十位上的数字
i mod 10 数字除10后的余数,获得个位上的数字

#5
kombel2011-07-09 09:39
回复 4楼 dzt0001
要得到百位上的数  也是不是依此类推啊
#6
dzt00012011-07-09 09:43
是,除以100,取整数部分就行了
#7
kombel2011-07-09 10:16
回复 6楼 dzt0001
程序代码:
<%
count
=0

for i=1to 99999
if int(i/10000)+int(i/1000)+int(i/100)+int(i/10)+(i mod 10)=25 then
    Response.Write (i
& "<br />")
    count
=count+1
end if
next

Response.Write (
"数目:"&count)
%>
我这样改了一下  怎么结果这样子的呢??  
结果:
159
168
177
186
195
203
212
221
230
数目:9
#8
dzt00012011-07-09 10:58
你要到99999,那原来用数值运算的方法就有点麻烦了,还是用字符分割比较方便了
循环太多了,容易假死,做这个有什么意义呢?
程序代码:
<%
count
=0

for num = 1 to 99999

num1
=0
for i = 1 to len(cstr(num))
    num1
=num1+int(mid(cstr(num),i,1))
next

if num1=25 then
    Response.Write (num
& "<br />")
    count
=count+1
end if
next

Response.Write (
"数目:"&count)
%>
1