Comment detail

九九の表示 (Nested Flatten)

何桁でも表記できるものを作成してみました。 かつ第二引数でHTML表示させる時の、 タグ形成も出来るようにしてます。

負荷軽減を考えるなら、 「strlen」の箇所を関数の最初に計算して、 変数にしてもいいかと思います。 とりあえずは行数を少なくするようにしてみました。

 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
<?php

function listKuku($num=9, $html=false)
{
    $list = "";
    for ($i=1; $i<$num+1; $i++) {
        for ($j=1; $j<$num+1; $j++) {
            $list .= str_pad($i, strlen($num), " ", STR_PAD_LEFT)." * ".str_pad($j, strlen($num), " ", STR_PAD_LEFT)." = ".str_pad($i*$j, strlen($num*$num), " ", STR_PAD_LEFT)."\n";
        }
    }
    if ($html) {
        $list = str_replace(" ", "&nbsp;", $list);
        $list = nl2br($list);
        //TABLE等作成させても可
    }
    return $list;
}

//header("Content-Type: text/html; charset=utf-8"); //必要なら使用

//使用方法1
$list = listKuku();
echo $list;

//使用方法2
$big_list = listKuku(40);
echo $big_list;

//使用方法3
$html_list = listKuku(40, true);
echo $html_list;

?>

Index

Feed

Other

Link

Pathtraq

loading...