黑马程序员技术交流社区

标题: 3个瓶盖一瓶水问题 [打印本页]

作者: 1099069909    时间: 2016-8-13 13:54
标题: 3个瓶盖一瓶水问题
package com.itheima;
/**
* 9、28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶
*可乐,够28人喝?假如是50人,又需要买 多少瓶可乐?(需写出分析思路)
*/

import java.util.Scanner;

public class Test9 {
        public static void  main(String[] args) {
                // 人数由你输入确定
                // 请输入需要可乐的人数);
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入需要可乐的人数:");
                int sum=sc.nextInt();

                // 需要买瓶i,实际可以喝到瓶num;
                //第一个人  需要买第一瓶;有一个瓶盖
                //第二个人  需要买第两瓶;有两个瓶盖
                //第三个人  需要买第三瓶;有三个瓶盖
                //第四个人   不需要购买,直接由前三名的换取一个即可;还剩一个瓶盖
                //第五个人   需要买第四瓶;有两个瓶盖
                //第六个人   需要买第五瓶; 有三个瓶盖;
                //第七个人    不需要购买;    直接由前三名的换取一个即可;还剩一个瓶盖
         //可以看出,从第一瓶开始后或者每次换取一瓶后,再次购买第一瓶的时候得到num+1,第二瓶的时候直接得到两个num+2,
               
                //定义  购买的瓶数  i,可以喝到的瓶数num;
          int num=0;
          int i=1;
        while (num<=sum){
                if(i%2==0){
                        num+=1;
                        }
                else{
                        num+=2;
                }
                i++;
               
        }
        
        //当num=sum 后  i就是要求的值,在while中又多执行了依次i++,得到的就够减去一次1即可
        System.out.println("购买可乐的瓶数是:"+(i-1));
               
               
       
        }
}

作者: 726477179    时间: 2016-8-13 13:55
貌似很多人发这个0.0




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2