黑马程序员技术交流社区

标题: 刚看见一道有意思的题,类似于找规律,发来给大家看看 [打印本页]

作者: 崔然    时间: 2017-2-23 22:49
标题: 刚看见一道有意思的题,类似于找规律,发来给大家看看
找到规律编码非常简单~就这么简单我还想了20分钟,大家没事了可以试试,明天公布答案~
如题:28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?
作者: yeluoxingye    时间: 2017-2-23 23:26
写出来了,这是我的答案,大家看看应该是这样写吧

import java.util.Scanner;

class Demo {
        public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("有多少人买可乐呢:");
                int num = sc.nextInt();
                int count1 = 0;
                int count2 = 0;
                while (true) {
                        count1++;
                        count2++;
                        if (count1 % 3 == 0) {
                                if (count1 == num - 1) {
                                        break;
                                }
                                count1++;
                        }
                        if (count1 == num) {
                                break;
                        }
                }
                System.out.println("需要买" + count2 + "瓶可乐");
        }
}
作者: 小虎同学    时间: 2017-2-24 07:04
可以可以

作者: yibuhuiba    时间: 2017-2-24 07:35
支持一下
作者: yibuhuiba    时间: 2017-2-24 07:36
支持一下
作者: DreamRDK    时间: 2017-2-24 09:07
有点意思,二楼思路好些,第一次买三个,送一个,第二次就买两瓶加上之前送的那个又可以的一瓶这样,count+2,n-3直到小于3

作者: lvshen9    时间: 2017-2-24 10:17
[AppleScript] 纯文本查看 复制代码
package myexam;

import java.util.Scanner;


/*
* 28人买可乐喝,3个可乐瓶盖可以换一瓶可乐
* ,那么要买多少瓶可乐,够28人喝?假如是
* 50人,又需要买多少瓶可乐?
*
*
*/
public class Test12 {

        public static void main(String[] args) {
                System.out.println("请输入要喝可乐的人数:");
                Scanner s=new Scanner(System.in);
               
                //定义需要喝的人数
                int num=s.nextInt();
                int bottel;
                //定义需要买的瓶数
                if(num<=3){
                        bottel=num;
                        System.out.println("当人数有"+num+"人时,需买"+bottel+"瓶");
                }else{
                        bottel=((num-4)/3)*2+(num-4)%3+3;

                        System.out.println("当人数有"+num+"人时,需买"+bottel+"瓶");
                }
        }

}


作者: 崔然    时间: 2017-2-25 00:11
public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入喝可乐的人数:");
                int p = sc.nextInt();                //喝可乐人数
                int c = 0;                //买可乐数
                if (p <= 3) {
                        System.out.println("需要买"+ p +"瓶可乐");
                }else if (p % 3 == 0) {
                        c = p + 1 - p/3;
                        System.out.println("需要买"+ c +"瓶可乐");
                }else {
                        c = p - p/3;
                        System.out.println("需要买"+ c +"瓶可乐");
                }
               
        }

这是我的,找到了其中规律就简单的不得了y%3==0:x=y-y/3+1///y%3!=0:x=y-y/3;y是人数,x是买的可乐




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