本帖最后由 furuigang 于 2016-1-24 22:33 编辑  
 
看到这样一道题目,顺手就做了下分享给大家。众位大神多多指教。求不打,求轻虐~还是以前的习惯,代码加截图,希望大家一起交流! 
  
 
题目: 
28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝? 
假如是50人,又需要买多少瓶可乐?(需写出分析思路) 
 
 
分析思路 
    A:要买够多少人喝,先一瓶一瓶的买,边买边换,直到可乐总数满足所有人喝为止 
    B:可以设可乐总数为 sum,购买的瓶数用 count 来计数 
    C:每购买一瓶 count 自加一,可乐总数 sum 也加一 
    D:购买瓶数 count 达到三的倍数时,就可以用瓶盖再换一瓶,即总数 sum 加一 
    E:按以上规律做一个循环,当可乐总数 sum 满足所有人需要时跳出循环 
    F:此时的 count 值即为需要购买的瓶数 
 
 
代码如下: 
public class Test10 { 
        public static void main(String[] args) { 
                System.out.println("28人买可乐喝,需要买" + getNum(28) + "瓶可乐"); 
                System.out.println("50人买可乐喝,需要买" + getNum(50) + "瓶可乐"); 
        } 
        public static int getNum(int num) { 
                int sum = 0;//用于记录当前可乐总数 
                int count = 0;//用于记录购买的可乐数 
                while (sum < num) { 
                        count++; 
                        if(sum % 3 == 0) 
                                sum++; 
                        sum++; 
                } 
                return count; 
        } 
} 
 
 
 
 
 |   
        
 
    
    
    
     
 
 |