起因: 源自于c的练习题,打印diamond,因为perl不需编译,方便调试,故先用perl实现一下

关键: 没有想到好的思路,只能借助于上一篇打印上下三角矩阵的方法,把菱形拆成上下左右4个三角矩阵区域来实现。

 #!/usr/bin/perl -w
use strict;
## ------------------------------- diamond -----------------------------------------
## upper peak
for my $row (reverse(..))
{
## upper left
for my $col(..)
{
if($col >= $row)
{
print "* ";
}
else
{
print " ";
}
} ## upper right
for my $col(reverse(..))
{
if($col > $row)
{
print "* ";
}
else
{
print " ";
}
}
print "\n";
} ## lower peak
for my $row (..)
{
print " ";
## lower left
for my $col(..)
{
if($col >= $row)
{
print "* ";
}
else
{
print " ";
}
} ## lower right
for my $col(reverse(..))
{
if($col > $row)
{
print "* ";
}
else
{
print " ";
}
}
print "\n";
}

输出:

最新文章

  1. 打造完美的xml技术解决方案(dom4j/xstream)
  2. Codeforces Round #346 (Div. 2)
  3. Android UI系列-----EditText和AutoCompleteTextView
  4. HTML5----CSS显示半个字符
  5. 通知NSNotificationCenter
  6. C++_前置声明
  7. 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…【字符串+模拟】
  8. Angular组件——中间人模式
  9. nsqlookup_protocol_v1.go
  10. linux下初始化mysql时报错
  11. Oracle11g版本中未归档隐藏参数
  12. 【Java】链表中存储对象的问题
  13. 01: html常用标签
  14. Laravel Eloquent Model->isDirty() Function
  15. C指针和数组
  16. shell脚本中针对sudo等密码输入的问题解决方案
  17. 解决gradle下载慢的问题(转)
  18. centos下安装python的过程
  19. Nothing is impossible
  20. SQL数据库查询语言(1)

热门文章

  1. jQuery-4.动画篇---动画基础隐藏和显示
  2. UVA10562(看图写树,dfs)
  3. LDAP&it's usage
  4. Android Historian安装使用
  5. Ubuntu-18.04.2-几个启动错误解决办法
  6. vue----计算与监听属性
  7. openWRT报错
  8. P4168 [Violet]蒲公英
  9. redis过期机制
  10. [R] [Johns Hopkins] R Programming -- week 4