文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>十进制与二十三进制转换 | 十进制与二十二进制转换

十进制与二十三进制转换 | 十进制与二十二进制转换

时间:2007-02-06  来源:php店小二



?php
/**
* @file
* @version 1.0
* @author 网海浪子
* @date 2007-02-06
* @email [email protected]
* @brief 十进制与二十三进制转换 | 十进制与二十二进制转换*
*/
?>
?php
/**
*
* @brief 十进制转换成二十二进制
*
* @param $num 十进制数
*
* @return 二十二进制数
*
*/
function get22NumBy10($num,$i=0)
{
$i++;
/*常量定义 开始*/
$num_e_22 = array(
    0=>"A",
    1=>"B",
    2=>"C",
    3=>"D",
    4=>"E",
    5=>"F",
    6=>"G",
    7=>"H",
    8=>"J",
    9=>"K",
    10=>"L",
    11=>"M",
    12=>"N",
    13=>"P",
    14=>"Q",
    15=>"R",
    16=>"S",
    17=>"T",
    18=>"W",
    29=>"X",
    20=>"Y",
    21=>"Z"
);
$bit_num = 22;
/*常量定义 结束*/
if($num=0)
{
  if($i==1)
  {
   return $num_e_22[$num];
  }
  else
  {
   return "";
  }
}
else
{
  $old_end_num = $num;
  $new_end_num = floor($num/$bit_num);
  return get22NumBy10($new_end_num,$i).$num_e_22[$old_end_num%$bit_num];
}
}
/**
*
* @brief 二十二进制转换成十进制
*
* @param $num 二十二进制数
*
* @return 十进制数
*
*/
function get10NumBy22($num_22)
{
/*常量定义 开始*/
$num_e_22 = array(
    "A"=>0,
    "B"=>1,
    "C"=>2,
    "D"=>3,
    "E"=>4,
    "F"=>5,
    "G"=>6,
    "H"=>7,
    "J"=>8,
    "K"=>9,
    "L"=>10,
    "M"=>11,
    "N"=>12,
    "P"=>13,
    "Q"=>14,
    "R"=>15,
    "S"=>16,
    "T"=>17,
    "W"=>18,
    "X"=>19,
    "Y"=>20,
    "Z"=>21
);
$bit_num = 22;
/*常量定义 结束*/
$leng = strlen($num_22)-1;
$i = 0;
$num_10 = 0;
while(substr($num_22,$i,1))
{
  $num_10 += $num_e_22[$num_22[$i]]*pow($bit_num,$leng);
  $i++;
  $leng--;
}
return $num_10;
}
/**
*
* @brief 十进制转换成二十三进制
*
* @param $num 十进制数
*
* @return 二十三进制数
*
*/
function get23NumBy10($num,$i=0)
{
$i++;
/*常量定义 开始*/
$num_e_23 = array(
    0=>"A",
    1=>"B",
    2=>"C",
    3=>"D",
    4=>"E",
    5=>"F",
    6=>"G",
    7=>"H",
    8=>"J",
    9=>"K",
    10=>"L",
    11=>"M",
    12=>"N",
    13=>"P",
    14=>"Q",
    15=>"R",
    16=>"S",
    17=>"T",
    18=>"V",
    19=>"W",
    20=>"X",
    21=>"Y",
    22=>"Z"
);
$bit_num = 23;
/*常量定义 结束*/
if($num=0)
{
  if($i==1)
  {
   return $num_e_23[$num];
  }
  else
  {
   return "";
  }
}
else
{
  $old_end_num = $num;
  $new_end_num = floor($num/$bit_num);
  return get23NumBy10($new_end_num,$i).$num_e_23[$old_end_num%$bit_num];
}
}
/**
*
* @brief 二十三进制转换成十进制
*
* @param $num 二十三进制数
*
* @return 十进制数
*
*/
function get10NumBy23($num_23)
{
/*常量定义 开始*/
$num_e_23 = array(
    "A"=>0,
    "B"=>1,
    "C"=>2,
    "D"=>3,
    "E"=>4,
    "F"=>5,
    "G"=>6,
    "H"=>7,
    "J"=>8,
    "K"=>9,
    "L"=>10,
    "M"=>11,
    "N"=>12,
    "P"=>13,
    "Q"=>14,
    "R"=>15,
    "S"=>16,
    "T"=>17,
    "V"=>18,
    "W"=>19,
    "X"=>20,
    "Y"=>21,
    "Z"=>22
);
$bit_num = 23;
/*常量定义 结束*/
$leng = strlen($num_23)-1;
$i = 0;
$num_10 = 0;
while(substr($num_23,$i,1))
{
  $num_10 += $num_e_23[$num_23[$i]]*pow($bit_num,$leng);
  $i++;
  $leng--;
}
return $num_10;
}
?>


相关阅读 更多 +
排行榜 更多 +
开心动动脑安卓版 v1.0 手机版

开心动动脑安卓版 v1.0 手机版

休闲益智 下载
不良人破局手游下载

不良人破局手游下载

角色扮演 下载
云海之下手游下载

云海之下手游下载

角色扮演 下载