<%
每多一项权利就加上2倍前面权利的权利参数 例:第一项权利参数->1,第二项权利参数->2(即1+1),第三项权利参数->4(即2+2),第四项权利参数->8(即4+4),最多支持31项权限
enable=enable+1 第1项权利
enable=enable+2 第2项权利
enable=enable+4 第3项权利
enable=enable+8 第4项权利
enable=enable+16 第5项权利
enable=enable+32 第6项权利
enable=enable+64 第7项权利
enable=enable+128 第8项权利
enable=enable+256 第9项权利
enable=enable+512 第10项权利
enable=enable+1024 第11项权利
enable=enable+2048 第12项权利
enable=enable+4096 第13项权利
enable=enable+8192 第14项权利
enable=enable+16384 第15项权利
enable=enable+32768 第16项权利
enable=enable+65536 第17项权利
enable=enable+131072 第18项权利
enable=enable+262144 第19项权利
enable=enable+524288 第20项权利
enable=enable+1048576 第21项权利
enable=enable+2097152 第22项权利
enable=enable+4194304 第23项权利
enable=enable+8388608 第24项权利
enable=enable+16777216 第25项权利
enable=enable+33554432 第26项权利
enable=enable+67108864 第27项权利
enable=enable+134217728 第28项权利
enable=enable+268435456 第29项权利
enable=enable+536870912 第30项权利
enable=enable+1073741824 第31项权利
再往下加2的32次幂的话就益出了,不只哪位有什么好的解决方法告诉我一下
response.write "您的权利数值为:"&enable
response.write "<br>"
response.write return_mylaw(return_2(enable))
%>
<%
十进制数转为二进制
function return_2(num)
num为需被转化为二进制的十进制数
num=cdbl(num)
if not isnumeric(num) then
return_2="请输入数字!"
response.end
end if
ii=num
value="" 存储模值
for i=1 to ii 默认循环十进制数的值,您可以用for i=1 to fix(ii/2)
value=value&num mod 2
num=fix(num/2)
if num=0 then exit for
next
return_2=strreverse(value) 反向输出字符串
return_2=value
end function
计算拥有哪几项权利值,为1表示拥有相应权利值
function return_mylaw(num)
str=""
str1="您拥有第" 测试时返回中文权限值,您可删掉此行
for i=1 to len(num)
if mid(num,i,1) = 1 then
str=str&i
str1=str1&i&"," 测试时返回中文权限值
end if
next
str1=left(str1,len(str1)-1) 测试时返回中文权限值
str1=str1&"项权限" 测试时返回中文权限值
return_mylaw=str1
return_mylaw=str&"<br>"&str1
return_mylaw=mid(num,1,1)
return_mylaw=num
end function
%>
我的qq:81224739
e-mail:xinyunderen007@126.com