例題:array関数とechoを用いて以下のドット絵を作成せよ
@@
@ @
@ @
@@@@@@
@ @
@ @
@@@@@
@ @
@@@@@
@ @
@ @
@@@@@
@@@@
@ @
@
@
@ @
@@@@
回答:
① 要素数6の配列を用意し、それを一行とする
② ①を6個格納した二次元配列を作成し一文字とする。
③ ②を3個格納した三次元配列を用意し、三文字とする。
④ foreachを用いて①の要素を一つずつ取り出して、ドットを打つか否か見て、echoで表現していく。
コード例:
<?php
$letters =
array(
array(
array(0, 0, 1, 1, 0, 0),
array(0, 1, 0, 0, 1, 0),
array(1, 0, 0, 0, 0, 1),
array(1, 1, 1, 1, 1, 1),
array(1, 0, 0, 0, 0, 1),
array(1, 0, 0, 0, 0, 1),
),
array(
array(1, 1, 1, 1, 1, 0),
array(1, 0, 0, 0, 0, 1),
array(1, 1, 1, 1, 1, 0),
array(1, 0, 0, 0, 0, 1),
array(1, 0, 0, 0, 0, 1),
array(1, 1, 1, 1, 1, 0),
),
array(
array(0, 1, 1, 1, 1, 0),
array(1, 0, 0, 0, 0, 1),
array(1, 0, 0, 0, 0, 0),
array(1, 0, 0, 0, 0, 0),
array(1, 0, 0, 0, 0, 1),
array(0, 1, 1, 1, 1, 0),
),
);
foreach($letters as $letter){
foreach ($letter as $column) {
foreach ($column as $row) {
if ($row == 1) {
echo "@";
}else {
echo " ";
}
}
echo "\n";
}
echo "\n";
}
?>