Heim > Backend-Entwicklung > PHP-Tutorial > php打印杨辉三角综合实例

php打印杨辉三角综合实例

WBOY
Freigeben: 2016-07-25 09:12:53
Original
847 Leute haben es durchsucht

例子,php打印杨辉三角。

  1. $params=getParams(1);

  2. $argv0=trim($params[0]);
  3. if(!is_numeric($argv0))
  4. {
  5. error_msg("params 1 must be a numbers");
  6. }
  7. $spaceNumber=6;

  8. $maxn=$argv0;
  9. output("",true);
  10. get_trangle($argv0);
  11. error_msg("execute success");
  12. function get_trangle($n){
  13. if($n { // bbs.it-home.org
  14. return false;
  15. }
  16. if($n==1)
  17. {
  18. $this_level=array(1);
  19. print_line($this_level,$n);
  20. return array(1);
  21. }
  22. if($n==2)
  23. {
  24. $this_level=array(1,1);
  25. print_line(array(1),1);
  26. print_line($this_level,$n);
  27. return $this_level;
  28. }
  29. $last_level=get_trangle($n-1);
  30. if(!is_array($last_level)||count($last_level) {
  31. return false;
  32. }
  33. $this_level=array();
  34. $this_level[0]=1;
  35. for($i=0;$i {
  36. $this_level[$i+1]=$last_level[$i]+$last_level[$i+1];
  37. }
  38. $this_level[]=1;
  39. print_line($this_level,$n);
  40. return $this_level;
  41. }
  42. function print_line($aArray,$n)
  43. {
  44. global $maxn,$spaceNumber;
  45. $line=sprintf("%".(($maxn-$n)*$spaceNumber/2)."s","");
  46. foreach($aArray as $i)
  47. {
  48. $line.=sprintf("%".$spaceNumber."s",$i);
  49. }
  50. output($line);
  51. }
  52. function getParams($paramNum)
  53. {
  54. $in=file_get_contents("in.txt");
  55. if($in===FALSE){
  56. error_msg("cannot read in.txt,please check in.txt exists\n");
  57. }
  58. $in=preg_replace("/(\s+)/i", " ", $in);
  59. $parms=split(" ",trim($in));
  60. if($parms===FALSE)
  61. {
  62. error_msg("cannot get param from in.txt\n");
  63. }
  64. if(count($parms) {
  65. error_msg("it needs $paramNum params\n");
  66. }
  67. return $parms;
  68. }
  69. //输出 杨辉三角
  70. function output($msg,$isClean=false)
  71. {
  72. if($isClean)
  73. {
  74. $handle = fopen('out.txt', 'w');
  75. fclose($handle);
  76. }
  77. error_log($msg."\n", 3, "out.txt");
  78. }
  79. function error_msg($msg,$is_exit=true)
  80. {
  81. if($is_exit)
  82. die($msg."\n");
  83. else
  84. echo $msg."\n";
  85. }
  86. ?>
复制代码


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage