現在の位置: ホーム> 最新記事一覧> PHPダイヤモンド出力チュートリアル:PHPでダイヤモンドパターンを生成する方法

PHPダイヤモンド出力チュートリアル:PHPでダイヤモンドパターンを生成する方法

M66 2025-09-25

PHPにダイヤモンドパターンを出力する方法

PHPのダイヤモンドパターンを出力する実装方法は、主にループ構造と弦のスプライシングに依存しています。ダイヤモンドの中間列の数を計算し、ループコントロールと組み合わせることにより、ダイヤモンドの上半分、中央列、および下半分が徐々に出力できます。

ステップ1:ダイヤモンドの中間列の数を決定する

ダイヤモンドのサイズは、中間行の数によって決定されます。ダイヤモンドの中間列の数が$行であると仮定します。

ステップ2:ダイヤモンドの上半分を出力します

ダイヤモンドの上半分は、中央の列から始まる線で出力ラインです。 PHPでstr_repeat()関数を使用して、各ラインの前にスペースとアスタリスクを生成できます。ループ制御は$ rows -1で始まり、徐々に減少します。

 
for ($i = $rows - 1; $i >= 1; $i--) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

ステップ3:中間線を出力します

ダイヤモンドの中央の列には、$ rows * 2-1アスタリスクが含まれています。

 
$midLine = str_repeat('*', $rows * 2 - 1);
    echo $midLine . "\n";

ステップ4:ダイヤモンドの下半分を出力します

下半分のダイヤモンドの出力法は上半分の出力と似ていますが、今回はライン2行から始まり、ラインごとに出力します。ループ制御は2から始まり、徐々に増加します。

 
for ($i = 2; $i <= $rows; $i++) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

完全なコードの例


$rows = 5;  // ダイヤモンドの中間列の数を設定します 5

// ダイヤモンドの上半分を出力します
for ($i = $rows - 1; $i >= 1; $i--) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

// 出力中間線
$midLine = str_repeat('*', $rows * 2 - 1);
echo $midLine . "\n";

// ダイヤモンドの下半分を出力します
for ($i = 2; $i <= $rows; $i++) {
    $spaces = str_repeat(' ', $i - 1);
    $stars = str_repeat('*', 2 * ($rows - $i) + 1);
    echo $spaces . $stars . "\n";
}

上記のコードの例は、PHPコードを使用してダイヤモンドパターンを生成する方法を示しています。ダイヤモンドのサイズを変更するために、必要に応じて$行の値を調整できます。ループの数と文字列ステッチの数を制御することにより、PHPのさまざまなパターンを柔軟に出力できます。