package text1_3;
//产生随机数0与1表示球的路径,最后狭槽中的小球数量可以用一个数组记录并且步数等于狭槽数-1;小球最终进入哪个槽中与向右的数量有关,并且是相等的
import java.io.*;
import java.util.Random;
public class Galton_Bottle {

public static void main(String[] args)throws IOException{
        java.util.Random random = new java.util.Random();
        System.out.println("Enter the number of balla to drop: ");
        int num_ball = 0;
        BufferedReader buffer = new BufferedReader(new InputStreamReader(System.in));
        num_ball = (new Integer(buffer.readLine())).intValue();
        System.out.println("Enter the number of slots in the bean machine: ");
        int slots = 0;
        slots = (new Integer(buffer.readLine())).intValue();
        int[] slot = new int[slots];
        for(int i = 0;i < num_ball;i ++)
        {
            int count = 0;
            for(int j = 0;j < slots - 1;j ++)
            {
                boolean path = random.nextBoolean();
                if(path)
                {
                    count ++;//count记录向右的个数,path为真表示向右的一个路径
                }
            }//一个豆子的一次进狭槽过程
            slot[count] ++;
        }
        //输出条形结果采用寻找最大值max,然后进行max次循环的方法
        int max = 0;
        for(int h = 0;h < slots - 1;h ++)
        {
            if(slot[h] < slot[h + 1])
                max = slot[h + 1];
        }
        for(int g = max;g > 0;g --)//输出条形展示
        {
            for(int f = 0;f < slots;f ++)
            {
                if(slot[f] == g)
                {
                    System.out.print("O");
                    slot[f] --;
                }
                else
                {
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
    }

}

模拟豆机、高尔顿瓶【java】相关推荐

  1. Java 使用Virtual Serial Port Driver及Modsim32进行modbus-rtu协议模拟(从机)并使用java当做主机(Maven项目)进行从机信息获取及修改

    上面我们写了一篇关于modbus-tcp的文章,这一篇我们主要将关于modbus-rtu的对接方式,好了,废话不多说,直接开搞. 一.环境准备 1.下载Virtual Serial Port Driv ...

  2. 【Java习题1】模拟豆机游戏

    1.题目: 2.思路:首先,先看简单情况:分析一下就会发现小球落在那个位置实际上与路径中有几个R有关(我选择分析R的数目,实际上分析L也是可以的)规律为:有n个R就到第(n+1)个槽 所以用一个数组 ...

  3. ***6.21-豆机 梅花瓶 高尔顿瓶

    问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:Slots.java *作 者:单昕昕 *完成日期:20 ...

  4. 【java】高尔顿瓶

    豆机 首先对每个豆子单独分析一下,若有8个槽,则每个豆子需面临7次路径的选择:左或者右,两种状态(暂用0和1态表示).总的来说,直到一个豆子掉入槽中,它选择的路径组合有2^7种.这就产生了一个如何产生 ...

  5. java程序模拟atm机_Java项目实现模拟ATM机

    本文实例为大家分享了Java实现模拟ATM机的具体代码,供大家参考,具体内容如下 项目名称 模拟ATM机 项目描述 简单实现ATM机功能 代码实现 测试类 public class Test { // ...

  6. java web atm机_Java项目实现模拟ATM机

    本文实例为大家分享了Java实现模拟ATM机的具体代码,供大家参考,具体内容如下 项目名称 模拟ATM机 项目描述 简单实现ATM机功能 代码实现 测试类 public class Test { // ...

  7. 运用JAVA基础阶段知识,模拟双色球机选抽奖过程

    运用JAVA基础阶段知识,模拟双色球机选抽奖过程 在控制台输入抽奖次数,进行双色球抽奖,并统计中奖结果 //双色球(机选) //红球33个选6个,蓝球16个选1个 //中奖号码设定为1,2,3,4,5 ...

  8. java web atm机_java笔记——模拟ATM机例子

    模拟ATM机,实现用户登录.查询.取款.存款和退出. 假定一个银行卡账户,程序执行的时候提示用户输入账号,然后输入密码,如果输入内容不符合规范,则程序会给出相应提示,连续3次输入有误,则退出系统.登录 ...

  9. java模拟atm_Java第一课——模拟ATM机

    Java第一课--模拟ATM机 开学第一节Java课,跟之前老师强调的一样--上课简单说了两句就直接开始了考试. 总结一下第一次做Java遇到的问题: 第一个是老师一直在强调要先考虑整体的思路,先把整 ...

最新文章

  1. 讨论:Service层需要接口吗?
  2. PAT L3-002. 堆栈
  3. ubuntu下制作u盘启动盘
  4. HJ37 统计每个月兔子的总数
  5. 训练数据集时为何要先加载预训练模型作为初始化,这样做有何好处?
  6. Spring 框架基础(04):AOP切面编程概念,几种实现方式演示
  7. 数据交互智能终端设想
  8. oracle 11g空表不能exp导出问题解决方案
  9. python与java前景-Python与Java相比,其优势在哪?
  10. 更开放的分布式事务 | Fescar 品牌升级,更名为 Seata
  11. SSM框架整合仿QQ空间
  12. 简单JAVA版本淘宝客程序上线
  13. Y2K问题和2038问题
  14. PSP开发简明教程(2)
  15. 自己制作dns解析服务器,如何使用自己的DNS服务器解析域名,架设自己的DNS服务器...
  16. 提速降费再发力 中国联通推出八项惠民便民措施
  17. Python并行处理
  18. 笔记本重置找不到恢复环境_重置Windows10系统时提示“找不到恢复环境”的解决方案...
  19. 数据恢复基础和进阶教程(三)
  20. 转载 仿微信表情与软键盘冲突

热门文章

  1. MATLAB之——Kronecker积
  2. Jetson nano(Ubuntu18.04) 网线连接电脑,实现VNC远程桌面
  3. NOIP 2002 字串变换
  4. 【20220926】html综合案例世纪佳缘
  5. OpenCV在图片上画线和矩形
  6. 给文字上加中划线_Word中为字符添加上划线该怎么做
  7. Python 实现斐波那契数列中的前50个
  8. 用matlab解决多重共线性问题,多重共线性和非线性回归的问题
  9. NetBackup 8.2 LinuxR 服务器安装及使用 ssh 方法将客户端软件从 UNIX 主服务器安装到 UNIX 客户端(持续更新)
  10. 神秘鸭,让语音操作电脑不再神秘 小爱同学