while文で四角形がうまく出力できません
Q&A
Closed
解決したいこと
while文を用いて四角形を出力してみたいと思い、phpで記述してみました。
試してみたところうまく出力されませんでした。
1行目もしくはn行目はn個#を描き、それ以外は1列目とn列目のみ#を描くというプログラムを作りたいと思っています。
↑の画像のシャープ(#)が5×5の四角形になるようにwhile文で表現したいと考えております。
該当するソースコード
<?php
$n = 5;
$i = 1; //行数
$j = 1; //列数
while ($i <= $n) {
while ($j <= $n) {
if ($i == 1 || $i == $n){
echo "#";
}
else{
if ($j == 1 || $j == $n){
echo "#";
}
else{
echo " ";
}
}
$j ++;
}
$i ++;
echo "</br>";
}
`
考えたこと
デベロッパツールを使いどうなっているか確認したところ、改行(<br)は5回分できてそうだったので、iやjの値が2・3・4...となる際に全て空白で表記されてしまっているのかと思いました。
ただ、順番に処理を見て行ってみてもあまりわからなかったので、教えていただけますと助かります。
0