『文字列で+を表示する』投稿

 『どう書く?.org』連投。
 お題はこちら
 与えられた文字列で十字を描けというもの。

 PHPで書(描)きました。
 ブラウザで出力するなら<pre>タグで括ると良い。

[cc lang=PHP]
$str = ‘abracadabra’;

$slen = strlen( $str );
$bar = $str.$str[0];

echo sprintf( “% “.strval($slen*2+1).”s\n”, $bar );
for ( $i = 0; $i < $slen-1; $i++ ) { echo sprintf( "% ".strval($slen+1)."s% ".strval($slen)."s\n", $str[$slen-$i-1], $str[$i+1] ); } echo sprintf( "%s% ".strval($slen*2)."s\n", $bar, $bar ); for ( $i = 0; $i < $slen-1; $i++ ) { echo sprintf( "%s% ".strval($slen*3)."s\n", $str[$slen-$i-1], $str[$i+1] ); } echo sprintf( "%s% ".strval($slen*2)."s\n", $bar, $bar ); for ( $i = 0; $i < $slen-1; $i++ ) { echo sprintf( "% ".strval($slen+1)."s% ".strval($slen)."s\n", $str[$slen-$i-1], $str[$i+1] ); } echo sprintf( "% ".strval($slen*2+1)."s\n", $bar); [/cc]  $strに任意の文字列を設定すれば、それに応じた十字が描かれる。  関数化できる箇所があるけど、わかりやすさ優先でわざと同じものを書いている。  仕様として、文字列は半角英数字2文字以上とする。ガードは入れてない。  文字列'abc'の場合以下の結果となる。 [cc lang=PHP] abca c b b c abca abca c b b c abca abca c b b c abca [/cc] 投稿: http://ja.doukaku.org/comment/11244/
PHP Rank:16(61.6%)

 どう書く.orgへのスパム何とかしてほしい。

Related Posts

Comments are closed.