php打印输出棋盘的实现方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php打印输出棋盘的两种实现方法。分享给大家供大家参考。具体实现方法如下:

例子1,代码如下:

复制代码 代码如下:
<?php
/**
 * 隔行隔列换色
 * string fun_table(int $rows=9,int $cols=9)
 * $rows 表示行数 必须为整数 并且必须在1-20之间
 * $cols 表示列数 必须为整数 并且必须在1-20之间
 */
function fun_table($rows=9,$cols=9){
 if ($rows<1 || $rows>20){
  return "必须为整数 并且必须在1-20之间";
 }
 if ($cols<1 || $cols>20){
  return "必须为整数 并且必须在1-20之间";
 }
 if($rows!=(int)($rows)){
  return '行数 必须为整数';
 }
 
 if($cols!=(int)($cols)){
  return '列数 必须为整数';
 }
 $str="";
 $str.= "<table  cellspacing='0' width='500px' border = '1px' bordercolor='black'>";
 for ($i=1;$i<=$rows;$i++){
  $str.=  "<tr>";
   for ($j=1;$j<=$cols;$j++){ 
    if(($i+$j)%2){
     $str.=  "<td height='50px' bgcolor='black'>";
    }else{
     $str.=  "<td></td>";
   }
  }
 $str.=  "</tr>";
}
$str.=  "</table>";
return $str;
}
echo fun_table();
?>

例子2 简单实现棋盘-for循环

实现这个棋盘首先我们想想棋盘是怎么样的,是有很多个方格组成,然后由黑色和白色的相间的方格组成,首先我们先把方格画出来,代码如下:

复制代码 代码如下:
<?php
echo "<table  cellspacing='0' width='500px' border = '1px' bordercolor='black'>";
for ($i=1;$i<=10;$i++){
    echo "<tr>";
    for ($j=1;$j<=10;$j++){    
            echo "<td>54im</td>";
        }
    echo "</tr>";
}
echo "</table>";
?>

看到上面棋盘后,考虑下黑白格排放位置,有个规律可以发现,横排和竖排上白色格子都是基数,黑色的都是偶数,我们可以用取余的方法来判断这个格子该显示什么颜色,基数单元格我让他显示白色,偶数单元格显示黑色,基数+偶数=偶数,所以偶数单元格(黑色)我们很好找出来了,剩余的就是基数格(白色),代码如下:
复制代码 代码如下:
<?php
/**
通过for循环和html实现棋盘
**/
echo "<table  cellspacing='0' width='500px' border = '1px' bordercolor='black'>";
for ($i=1;$i<=10;$i++){
    echo "<tr>";
    for ($j=1;$j<=10;$j++){    
        if(($i+$j)%2){
            echo "<td height='50px' bgcolor='black'>";
        }else{
            echo "<td></td>";
            }
        }
    echo "</tr>";
}
echo "</table>";
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP求最大子序列和的算法实现

复制代码 代码如下: <?php //作者:遥远的期待 //QQ:15624575 //算法分析:1、必须是整数序列、2、如果整个序列不全是负数,最大子序列的第一项必须是正数,否则...

php将fileterms函数返回的结果变成可读的形式

复制代码 代码如下: function perms_str($perms){     if (($perms & 0xC000) == 0xC000) {  ...

php 缓存函数代码

复制代码 代码如下:** * @说明: 文件缓存输出 * @参数: $cachefile => cache文件(绝对路径) * @参数: $pertime => 缓存输出的间...

php ajax实现文件上传进度条

本实例是关于php文件上传时进度条的实现,主要采用ajax技术,另外还运用了html5,有需要的朋友可以研究一下。 本实例有两个文件: upload_form.html: <...

php中strtotime函数性能分析

最近在做一个游戏数据统计后台,最基础的功能是通过分析注册登录日志来展示用户数据。在公司内部测试,用户量很少,所以就没有发现什么性能问题。但是这两天一起放到真实的测试环境,用户量噌噌地就涌...