ホームページ >バックエンド開発 >PHPチュートリアル >辺の長さを指定して中実および中空のダイヤモンド形状を印刷する方法 N_PHP チュートリアル

辺の長さを指定して中実および中空のダイヤモンド形状を印刷する方法 N_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:05:54886ブラウズ

phpで辺の長さがNの立体と中空のひし形を印刷する方法

この記事では、phpで辺の長さがNの立体と中空のひし形を印刷する方法を主に紹介します。サンプルを使ってグラフィックを描いてください。必要な友達はそれを参照してください

この記事の例では、PHP で辺の長さが N である中実および中空のダイヤモンド形状を印刷する方法を説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです:

ソリッドダイヤモンドの計算方法:
$n: 辺の長さ
$i: 0 から始まる現在の行
$rows: 行の総数

上部
前にあるスペースの数 =$n-$i-1
文字数=$i*2+1

下部
前にあるスペースの数 =$i-$n+1
文字数=($rows-$i)*2-1

str_pad を使用して for/while ループを削減します

コードは次のとおりです:

/**
*ソリッドダイヤモンド形状を印刷します
* @param int $n 辺の長さ、デフォルトは 5
* @param String $s 文字が表示されます、デフォルト*
* @return 文字列
*/
関数solidDiamond($n=5, $s='*'){
$str = ''; // 総行数を計算します
$行 = $n*2-1; // 各行の * を計算するループ
for($i=0; $i if($i $str .= str_pad('', ($n-$i-1), ' ').str_pad('', $i*2+1, $s)."rn"; }else{ // 下部
$str .= str_pad('', ($i-$n+1), ' '). str_pad('', ($rows-$i)*2-1, $s); }
}
$str を返します。 }
エコー ''; エコーソリッドダイヤモンド(5) <br> echo '';





コードは次のとおりです:

*

***

*****

*******

*********

*******
*****
***
*



中空ダイヤモンドの計算方法:
$n: 辺の長さ
$i: 0 から始まる現在の行 $rows: 行の合計数

上部

前にあるスペースの数 =$n-$i-1
空きスペースの数 =$i*2+1-2
文字数 = $i*2+1 - 空白の数

下部

前にあるスペースの数 =$i-$n+1
空のスペースの数 = ($rows-$i)*2-1-2
文字数 = ($rows-$i)*2-1 - 空白の数

コードは次のとおりです:


/**
* 中空ダイヤモンド形状を印刷します
* @param int $n 辺の長さ、デフォルトは 5

* @param String $s 文字が表示されます、デフォルト*

* @return 文字列

*/
関数hollowDiamond($n=5, $s='*'){
$str = ''; // 総行数を計算します
$rows = $n*2-1; // 各行の * を計算するループ
for($i=0; $i if($i $tmp = $i*2+1; $str .= str_pad('', ($n-$i-1), ' '). str_pad(str_pad('', $tmp-2, ' ', STR_PAD_BOTH), $tmp, $s, STR_PAD_BOTH)。 「ん」 }else{ // 下部
$tmp = ($rows-$i)*2-1; $str .= str_pad('', ($i-$n+1), ' '). str_pad(str_pad('', $tmp-2, ' ', STR_PAD_BOTH), $tmp, $s, STR_PAD_BOTH)。 「ん」;
}
}
$str を返します。 }
エコー ''; エコーホロウダイヤモンド(5); echo '';





コードは次のとおりです:

*
* *
* *
* *
* *
* *
* * * *

*

この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。






http://www.bkjia.com/PHPjc/962925.html

www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/962925.html

技術記事 phpで辺の長さNの中実と中空のひし形を印刷する方法 この記事では、phpで辺の長さがNの中実と中空のひし形を印刷する方法を主に紹介します。 ...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。