PHP용 FizzBuzzWhizz
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-07-25 08:48:07
来源:其他FizzBuzzWhizz :http://www.oschina.net/code/snippet_1414453_35450;
正则复习 php class,写的不太好,抛砖引玉 。
- class NumberGame{
- private $str="start
";
- private $num=0;
- private $Fnum=0;
- private $snumarr=array();
- private $arr_key=array();
- function __construct($Fnum,$num,$snumarr){
- if($Fnum>=1 && $num>$Fnum && is_array($snumarr) && count($snumarr)>0){
- //$this->Fnum=$Fnum;
- //$this->num=$num;
- $this->snumarr=$snumarr;
- for($i=$Fnum;$i<=$num;$i ){
- //rule 5
- $this->arr_key=array_keys($snumarr);
- $typeB = strpbrk($i, current($this->arr_key) )?true:false;
- if($typeB){
- $this->str.= current($snumarr)." (".$i.")
";
- }else{
- $this->rule($i);
- }
- }
- }
- }
- function rule($i){
- $str="";
- for($j=0;$jsnumarr);$j ){
- $key=$this->arr_key[$j];
- //var_dump($key);
- if(is_int($i/$key)){
- $str.=$this->snumarr[$key];
- }
- }
- if(empty($str)){
- $str=$i."
";
- }else{
- $str.= " (".$i.")
";
- }
- $this->str.=$str;
- }
- function answer(){
- return $this->str;
- }
- }
-
-
- $snumarr=array('3'=>'Fizz','5'=>'Buzz','7'=>'Whizz');
-
- $ng=new NumberGame(1,100,$snumarr);
-
- echo $ng->answer();
复制代码
|
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2025-02-26 03:58:14
-
2025-02-26 03:38:10
-
2025-02-26 03:17:10
-
2025-02-26 02:49:09
-
2025-02-26 01:08:13
-
2025-02-26 00:46:10
-
2025-02-25 23:42:08
-
2025-02-25 22:50:13
-
2025-02-25 21:54:11
-
2025-02-25 20:45:11
최신 이슈
-
2025-03-27 19:52:53
-
2025-03-27 19:51:32
-
2025-03-27 19:50:35
-
2025-03-27 19:49:33
-
2025-03-27 19:48:29