//Set initial variable value according to test instructions
Then a while loop to manipulate
Every change to a bottle, the one minus to do the corresponding number
And then after the beer, the numbers add 1.
Until it does not meet the requirements. Jump out of the loop
1 classbeer{2 3     protected $uni _gai= 4;//1 bottles per 4 caps4     protected $uni _bottle= 2;//1 bottles for every two bottles5     protected $uni _beer= 2;//2 bucks per bottle .6     protected $rs=Array();//Access Results7     protected $total= 0;//The quantity of beer currently bought8     protected $gai= 0;//How many beers are there at the moment?9     protected $empty _bottle= 0;//Empty BottleTen  One      Public function__construct ($money){ A         $cur=$money/$this-Uni_beer; -         $this->total =$cur; -         $this->gai =$cur; the         $this->empty_bottle =$cur; -     } -  -      Public functionrun () { +          while($this->gai > 0 | |$this->empty_bottle > 0){ -             if($this->gai >=$this-Uni_gai) { +                 $this->deal_num (' Gai '); A             } at             if($this->empty_bottle >=$this-uni_bottle) { -                 $this->deal_num (' Empty_bottle '); -             } -  -             $this-Check_overflow (); -         } in         return $this-rs; -     } to  +      Public functionDeal_num ($type){ -         if($type= = ' Gai '){ the             $this->gai-=$this-Uni_gai; *}Else{ $             $this->empty_bottle-=$this-Uni_bottle;Panax Notoginseng         } -         $this->gai++; the         $this->empty_bottle++; +         $this->total++; A     } the      Public functionCheck_overflow () { +         if($this->gai <$this->uni_gai &&$this->empty_bottle <$this-uni_bottle) { -             $this->rs[' gai '] =$this-gai; $             $this->rs[' total ' =$this-Total ; $             $this->rs[' empty_bottle '] =$this-Empty_bottle; -             $this->gai = 0; -             $this->empty_bottle = 0; the         } -     }Wuyi      Public function_print () { the         Echo' Gai: ',$this-gai; -         Echo' <br> '; Wu         Echo' Empty_bottle: ',$this-Empty_bottle; -         Echo' <br> '; About         Echo' Total ',$this-Total ; $         Echo' ; -     } - } -  A $peer=NewBeer (10); + $rs=$peer-run (); the Print_r($rs);
The result is: Array ([Gai] = 3 [Empty_bottle] = 1 [total] + 15)
Cover 3, Empty bottle 1, drink 15 bottles of beer in total
Each bottle of beer is 2 yuan, 2 empty bottles or 4 caps can be replaced by 1 bottles of beer. 10 Yuan How many bottles of beer can I drink? Php