快速业务通道

PHP打印环状数字圈

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-23
如题:
$i=[number];
打印如下的图形:

1  2  3  4
12 13 14 5
11 16 15 6
10 9  8  7

 

  1. /**   
  2.  * 二维数组排序   
  3.  * @param   array $array   
  4.  */    
  5. function sort_recursive(&$array){    
  6.     foreach($array as $key=>$edge){    
  7.         ksort($edge,true);    
  8.         $array[$key]=$edge;    
  9.     }    
  10.     ksort($array,true);    
  11. }    
  12.     
  13. /**   
  14.  * 生成一圈环状数字   
  15.  * @param   array $cotainer    二维数组,包含生成的圈   
  16.  * @param   int $start_value    该圈的起始值   
  17.  * @param   int $x    该圈的偏移值   
  18.  * @param   int $grids_edge    每条边的数字个数   
  19.  */    
  20. function generate(&$container,$start_value,$x,$grids_edge){    
  21.     $rec_times=ceil($grids_edge/2);    
  22.     $center=$grids_edge&1?false:$start_value+4*$rec_times*($rec_times+1);    
  23.     if($center){    
  24.         $index=$x+ceil($grids_edge/2);    
  25.         $container[$index][$index]=$center;    
  26.     }    
  27.     for($i=0;$i<$grids_edge;$i++){    
  28.         $right=$x+$grids_edge;    
  29.         $basevalue=$start_value+$i;    
  30.         $container[$x][$x+$i]=$base_value;    
  31.         $container[$x+$i][$right]=$grids_edge+$base_value;    
  32.         $container[$right][$right-$i]=$grids_edge*2+$base_value;    
  33.         $container[$right-$i][$x]=$grids_edge*3+$base_value;    
  34.     }    
  35. }    
  36.     
  37.     
  38. $container=array();    
  39. $data=array(    
  40.     1 =>array(1,6),    
  41.     25=>array(2,4),    
  42.     41=>array(3,2),    
  43. );    
  44. /*   
  45. $data=array(   
  46.     1 =>array(

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号