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程序设计有所帮助。

相关文章

屏蔽机器人从你的网站搜取email地址的php代码

垃圾邮件很烦人,下面贴一种能够自动屏蔽机器人从你的网站搜集email地址的方法。 复制代码 代码如下: function security_remove_emails($content)...

PHP中应该避免使用同名变量(拆分临时变量)

当一个临时变量被赋值多次时,那么将其拆分成多个,除非它是一个循环计数器。 Motivation 临时变量有这多种不同的用途。比如它们可被用作循环中的计数器,在循环中保存结果集,亦或保存一...

降低PHP Redis内存占用

降低PHP Redis内存占用

1、降低redis内存占用的优点  1、有助于减少创建快照和加载快照所用的时间  2、提升载入AOF文件和重写AOF文件时的效率  3、缩短从服务器进行同步所需的时间  4、无需添加额外...

PHP 开发者该知道的 5 个 Composer 小技巧

Composer 是新一代的PHP依赖管理工具。其介绍和基本用法可以看这篇《Composer PHP依赖管理的新时代》。本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带...

PHP设计模式之装饰者模式

PHP设计模式之装饰者模式

介绍 装饰者模式动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。 思维导图   有这样一个项目,做一个餐厅订餐系统。起初的代码结构是这样的。前...