纯字母的26进制算法

[ 2008-09-01 13:10:30 | 作者: {$author:name$} ]  编辑  删除
字体大小: | |
[code]function zimu(n){
  if (n<0)return "";
  var aZ=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];
  var str="";
  var last=n%26;
  str=aZ[last]+str;
  n=n-last;

  if(n>0){str=zimu(n/26-1)+str;}
  return str;
}
[/code]

如果需要处理负数,其实应该用不到
[code]function zimu(n){
  var fushu = n<0?true:false;
  if (n<0)n=-n;
  var aZ=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];
  var str="";
  var last=n%26;
  str=aZ[last]+str;
  n=n-last;

  if(n>0){str=zimu(n/26-1)+str;}
  return (fushu?"-":"")+str;

}
[/code]


如果不需要0,a=1,b=2
[code]function zimu(n){
  if (n<=0)return "";
  var aZ=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"];
  var str="";
  n=n-1;
  var last=n%26;
  str=aZ[last]+str;
  n=n-last;

  if(n>0){str=zimu(n/26)+str;}
  return str;
}
[/code]

用0-9,a-p表示26进制,这个就简单了
"2008".toString(26)

评论Feed 评论Feed: http://ifisker.com/blog/feed.asp?q=comment&id=1127
UTF-8 Encoding 引用链接: loading...

这篇日志没有评论.

发表评论
表情图标
[smile][confused][cool][cry]
[eek][angry][wink][sweat]
[lol][stun][razz][redface]
[rolleyes][sad][yes][no]
[heart][star][music][idea]
UBB代码
转换链接
表情图标
悄悄话
用户名:   密码:   注册?
验证码* 请输入验证码