PHP打印左右箭头图案的实现方法(代码示例)

来源:藏色散人 发布时间:2019-03-21 16:16:46 阅读量:1183

本篇文章我们将给大家介绍了一个有趣的PHP方法。即用PHP实现打印出由星形组成的右箭头图案和左箭头图案。如,输入奇数n,表示要打印的图案高度和宽度。

例子:

a87dc54ee3782a1683a8daae4904cc1.png

PHP代码实现示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

<?php

   

// rightpattern方法可打印右箭头图案

function rightpattern($n)

{

       

    // 用于打印上面部分

    $c1 = ($n - 1) / 2;

   

    // 用于打印下半部

    $c2 = floor(3 * $n / 2 - 1);

   

    for ($i = 0; $i < $n; $i++)

    {

        for ($j = 0; $j < $n; $j++) 

        {

   

            // 检查条件,以打印右箭头

            if (($j - $i) == $c1 || 

                ($i + $j) == $c2 || 

                 $i == $c1)

                echo "*";

   

            // 否则打印空格

            else

                echo " ";

        }

           

        echo "\n";

    }

}

   

// leftpattern方法可打印左箭头图案

function leftpattern($n)

{

    $s = ' ';

    $st = '*';

   

    // 用于打印上半部

    for ($i = ($n - 1) / 2; $i > 0; $i--)

    {

    for($j = 0; $j < $i; $j++)

        echo " ";

    echo $st."\n";

    }

       

    // 用于打印中间部分

    for ($i = 0; $i < $n; $i++)

        echo "*";

    echo "\n";

   

    // 用于打印下半部

    for ($i = 1; $i <= ($n - 1) / 2; $i++)

    {

            for($j = 0; $j < $i; $j++)

        echo " ";

    echo $st."\n";

    }

    echo "\n";

}

   

    // 运行

    $n = 9; // 必须是奇数

   

    // 方法调用以打印右箭头

    rightpattern($n);

   

    echo "\n\n";

   

    // 方法调用以打印左箭头

    leftpattern($n);

输出:

1c0423df96168c90f6a2266654b1390.png


标签: PHP
分享:
评论:
你还没有登录,请先