ホームページ > バックエンド開発 > PHPチュートリアル > 40 点。小さな PHP コードを教えてください。解決策を共有してください。

40 点。小さな PHP コードを教えてください。解決策を共有してください。

WBOY
リリース: 2016-06-13 13:47:56
オリジナル
797 人が閲覧しました

短い PHP コードを要求するには 40 ポイント。
要件:
2 つの数字 a と b からランダムに数字を 1 つ選択して、10 文字の文字列を形成します。

要件:
1. 連続する 2 つの文字が同じであることはできません (0 を除く)。同じ 2 つの文字がランダムに取得された場合、次の文字が現れるまで、次の文字を 0 に変換する必要があります。ループの後に abbb などの別の文字を入力すると、結果は ab00 に変換される必要があります。
2. 重複する文字は、文字列の生成時に処理する必要があります。

最終的な正しい結果の例: 0a000b00ab、または abab0000ba



ありがとうございます!

-----解決策--- ------------------

PHP コード
$last = '';
$r = '';
for($i=0; $i0.5 ? 'a' : 'b';
  $r .= $t == $last ? '0' : $t;
  $last = $t;
}
エコー $r;
<br><font color="#e78608">------解決策---------</font><br><?php<br><br> 関数chkStr($a,$b)<br>{<br> $str='';<br> $c='';<br> $d='';<br> $arr=array($a , $b);<br> while(strlen($str) {<br> $d=rand(0,1);<br> $str.=($c==$arr [ $d]) : ($arr[$d]); <br> $c=($c==$arr[$d]) : ($arr[ $ d]); <br> } <br> return $str;<br><br>echo chkStr(a,b);<br><br>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート