发牌程序 java

2023-11-19

题目要求

在这里插入图片描述

代码

package PokerGame;
import java.util.*;
public class PokerGame {

    //黑桃、红心、草花、方块
    int m;   //牌数
    int n;  //人数
    int warning =0; //有余数
    int poker[][];  //牌
    int people[][]; //人获得的牌
    int poker_number;
    String[] poker_name = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};   //牌
    public  PokerGame(){
        Scanner reading =new Scanner(System.in);
        System.out.print("输入扑克牌幅数:");
        m=reading.nextInt();
        System.out.print("输入人数:");
        n=reading.nextInt();//人数
        poker_number=(m*52)/n;
        if((m*52)%n!=0){
            warning =1;
        }
        poker=new int[m][52];//原来的牌
        people=new int[n][((m*52)/n)+2];
        for (int i = 0; i < n; i++) {
            Arrays.fill(people[i],-1);
        }
        reading.close();
        
    }
    void xipai(){
        for (int i = 0; i <m ; i++) {
            for (int j = 0; j <52 ; j++) {
                this.poker[i][j]=j;
            }
        }   //初始化

        //洗牌
        for(int k=0;k<m;k++) {
            for(int i=0;i<52;i++) {
                int index = (int)(Math.random()*52);
                int temp = poker[k][i];
                poker[k][i] = poker[k][index];
                poker[k][index] = temp;
            }
        }
//        System.out.println("洗牌后:");
//        for (int i = 0; i < m; i++) {
//            for (int j = 0; j < 52; j++) {
//                System.out.print(poker[i][j]+" ");
//            }
//            System.out.println("");
//        }
    }
    void fapai(){
        //发牌,一人一张,直到发完
        int a=0,b=0;
        for (int i = 0; i <m; i++) {
            for (int j = 0; j <52; j++) {
                people[a][b]=poker[i][j];
                a++;
                if(a==n){
                    b++;
                    a=0;
                }
            }
        }
    }
    void print()
    {
        int i=0;
        while (i!=this.n) {
            ArrayList<Integer> black = new ArrayList<Integer>();
            ArrayList<Integer> red = new ArrayList<Integer>();
            ArrayList<Integer> flower = new ArrayList<Integer>();
            ArrayList<Integer> block = new ArrayList<Integer>();
            //黑桃、红心、草花、方块
            int j = 0;
            while (people[i][j] != -1) {
                if (people[i][j] < 13) {
                    black.add(people[i][j]);
                } else if (people[i][j] < 26) {
                    red.add(people[i][j]);
                } else if (people[i][j] < 39) {
                    flower.add(people[i][j]);
                } else if (people[i][j] < 52) {
                    block.add(people[i][j]);
                }
                j++;
            }
            black.sort(Comparator.reverseOrder());
            red.sort(Comparator.reverseOrder());
            flower.sort(Comparator.reverseOrder());
            block.sort(Comparator.reverseOrder());
            System.out.println("第"+(i+1)+"个人:");
            System.out.print("黑桃:");
            for (int k : black) {
                System.out.print(poker_name[k%13]+' ');
            }
            System.out.println();
            System.out.print("红心:");
            for (int k : red) {
                System.out.print(poker_name[k%13]+' ');
            }
            System.out.println();
            System.out.print("草花:");
            for (int k : flower) {
                System.out.print(poker_name[k%13]+' ');
            }
            System.out.println();
            System.out.print("方块:");
            for (int k : block) {
                System.out.print(poker_name[k%13]+' ');
            }
            System.out.println();
            i++;
        }

    }
    public static void main(String[] args) {
        PokerGame mygame= new PokerGame();
        mygame.xipai();
        mygame.fapai();
        mygame.print();
    }
}



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

发牌程序 java 的相关文章

  • 如何从 Play WSClient 的字符串创建 WSResponse 对象

    文档 https www playframework com documentation 2 4 x JavaTestingWebServiceClients Mock the web service建议使用模拟Web服务测试基于WSCli
  • 如何使用 Maven Failsafe 插件运行 JUnit 5 集成测试?

    当我运行命令时 Maven Failsafe 插件找不到我的 JUnit 5 集成测试mvn clean failsafe integration test 尽管它可以找到文件 我有junit jupiter api and junit j
  • Quarkus 不以编程方式选择 bean

    我试图以编程方式选择 bean 但 quarkus 不会注入 bean 并引发异常 不支持吗 public enum ReportType ONE TWO Qualifier Retention RUNTIME Target METHOD
  • 如何在log4j的配置文件中为文件附加器提供环境变量路径

    我有一个log4j xml配置文件 和一个RollingFileAppender我需要提供用于存储日志的文件路径 问题是我的代码将作为可运行的 jar 部署在 Unix 机器上 所以如果我传递这样的参数 value logs message
  • 如何配置 Spring-WS 以使用 JAXB Marshaller?

    感谢您到目前为止对此的帮助 我正在更新问题 因为我没有显示我需要的所有内容 并显示了建议的更改 肥皂输出仍然不是我想要的 servlet xml
  • 在 Java 中从 SOAPMessage 获取原始 XML

    我已经在 J AX WS 中设置了 SOAP WebServiceProvider 但我无法弄清楚如何从 SOAPMessage 或任何 Node 对象获取原始 XML 下面是我现在获得的代码示例 以及我试图获取 XML 的位置 WebSe
  • 项目缺少所需的注释处理库

    我的 Eclipse IDE 突然在问题视图中显示 xxxx 项目缺少所需的注释处理库 xxxx M2 REPO 中的一些旧 jar 我用谷歌搜索 没有找到任何答案 为什么我的项目使用旧的 jar 以及错误来自哪里 To remove th
  • 如何为小程序提供对文件系统写入的访问权限

    我在设置小程序的策略文件时遇到问题 我是第一次这样做 不知道如何在java中设置小程序的策略文件 实际上我想授予小程序在文件系统上写入的权限 为此我必须向小程序授予文件权限 所以我创建了一个名为 java policy 的文件 并将以下代码
  • JTextField 和 JTextArea

    JTextField 和 JTextArea 有什么不同 是否可以在一个班级中使用这两个班级 总之 JTextField 是单行文本字段 而 JTextArea 可以跨越多行 文档中清楚地解释了这些差异 文本区 http docs orac
  • 使用 JSch 分别为各个提示提供输入

    问题是 SSH 连接需要在常规登录后提供另一个用户 ID 和密码信息 我正在使用 JSch 连接到远程服务器 它接受以下形式的输入InputStream 和这个InputStream只能通过一次 由于会话是交互式的 这会导致问题 我尝试将输
  • OpenNLP 与斯坦福 CoreNLP

    我一直在对这两个包进行一些比较 但不确定该往哪个方向走 我简单地寻找的是 命名实体识别 人 地点 组织等 性别识别 一个不错的训练 API 据我所知 OpenNLP 和斯坦福 CoreNLP 提供了非常相似的功能 然而 Stanford C
  • 正则表达式在 Velocity 模板中不起作用

    我在 Test java 中尝试过这个 String regex lt s br s s gt String test1 lt br gt System out println test replaceAll regex 但是当我在速度模板
  • 更改 JComboBox 中滚动条的大小

    有谁知道如何手动更改 jComboBox 中的滚动条大小 我已经尝试了一大堆东西 但没有任何效果 好吧 我明白了 您可以实现 PopUpMenuListener 并使用它 public void popupMenuWillBecomeVis
  • 如何使用 swagger-codegen-plugin (maven) 生成客户端代码?

    我需要使用 swagger codegen plugin for maven 在 eclipse 中生成服务器存根代码 你能帮忙怎么做吗 以及需要什么配置 在 pom xml 中 我找到了这个答案 您只需要像下面这样更改 pom xml 即
  • 是否有最新的 Facebook Java SDK? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 好像没找到最近更新的 如果没有 是否有一个好的 Java 库来执行与 Facebook 的 API 交
  • 从 Android 访问云存储

    我一直无法找到任何有关如何从 Android 应用程序使用云存储的具体文档 我确实遇到过这个客户端库 https cloud google com storage docs reference libraries然而 Google Clou
  • 多线程——更快的方法?

    我有一堂有吸气剂的课程getInt 和一个二传手setInt 在某个领域 比如说领域 Integer Int 一个类的一个对象 比如说SomeClass The setInt 这里是同步的 getInt isn t 我正在更新的值Int来自
  • java swing:向 JTree 项目添加自定义图形按钮

    我想在 JTree 中的项目右侧添加一个带有小图标的附加按钮 这可以做到吗 如果是这样 怎么办 thanks Clamp 你在这方面成功了吗 我想做同样的事情 但很难让 JButton 响应用户 设置渲染器以显示按钮的过程很顺利 但所有鼠标
  • Java:一个函数有多种返回类型...可以使用泛型吗?

    为了简单起见 我有一些程序 如下所示 public String fetchValueAsString String key public DateTime fetchValueAsDateTime String key 我想要类似的东西
  • JPA 将 BigDecimal 作为整数保存在数据库中

    我在数据库中有这个字段 ITEMCOST NUMERIC 13 DEFAULT 0 NOT NULL 在JAVA中 Entity中的字段定义如下 Column name ITEMCOST private BigDecimal itemCos

随机推荐

  • idea连接mysql注册登录_idea配置连接数据库的超详细步骤

    学习时 使用IDEA的时候 需要连接Database 连接时遇到了一些小问题 下面记录一下操作流程以及遇到的问题的解决方法 一 连接操作 简介 介绍如何创建连接 具体连接某个数据库的操作流程 1 1 创建连接 打开idea 点击右侧的 Da
  • 并行程序设计作业7/7

    目录 两个线程 一个生产者一个消费者 2k个线程 奇数消费者偶数生产者 2k个线程 每个既可以是生产者又可以是消费者 两个线程 一个生产者一个消费者 include
  • cmake policy

    1 cmake policy是什么 cmake policy可以理解为cmake的语法标准 也就是说 它规定了cmake在解析CMakeLists txt文件时的行为 2 cmake policy的用途是什么 cmake在进化的过程中 需要
  • CAN分析仪 USBCAN USB转CAN CAN转换调试器接口卡使用指导

    USBCAN系列便携式CAN分析仪 通过USB接口快速扩展一路CAN通道 使接入CAN网络非常容易 它具有一体式和小巧紧凑的外形 特别适合于随身携带 第一步 将usbcan卡连接电脑如图 usb灯亮红灯 打开 USBCAN系列便携式CAN总
  • 编程之美2015初赛第二场AB

    题目1 扑克牌 时间限制 2000ms 单点时限 1000ms 内存限制 256MB 描述 一副不含王的扑克牌由52张牌组成 由红桃 黑桃 梅花 方块4组牌组成 每组13张不同的面值 现在给定52张牌中的若干张 请计算将它们排成一列 相邻的
  • 2023.02

    2023 02 01 将mpu写到dxReagion中的数据打印到文件中 调试解决mpu2ipu和ipu2mpu同时跑线程未关掉导致的异常 2023 02 02 学习2102 spec文档和mpu设计文档 将mpuipu测试用例加到回归测试
  • SpringMVC访问静态资源问题

    搭建Spring MVC环境时 如果在Spring MVC的配置文件中DispatcherServlet拦截 则会对 html js jpg等静态文件的访问也会被拦截 想要访问这些静态资源必须要进行相应的配置这里推荐两中比较简单的方法 1
  • 【无监督学习】1、MOCOv1

    文章目录 一 背景 二 方法 2 1 对比学习 字典查表 2 2 动量对比函数 2 3 Pretext Task 三 效果 3 1 数据集 3 2 训练细节 3 3 实验 四 代码 论文 Momentum Contrast for Unsu
  • python中int什么意思_python 的 int() 函数是什么,怎么用

    int 函数是python的一个内置函数 用于把一个字符串或者数字转换为 整型 下面来具体看一下 工具 原料 IDLE 电脑 方法 步骤 1 int 的常用语法 int 字符串或者数字 进制数 进制数默认为十进制 如果int 中没有参数 返
  • PDF学习十:图形状态

    说明 一个PDF应用程序 Foxit Reader或Adobe Reader 维护内部数据结构称为图形状态 它保存了当前图形控制参数 这些参数定义在全局框架 在全局框架内可执行图形操作符 例如 f 填充 操作符隐式调用当前颜色这个参数 S
  • Python爬虫学习汇总(持续更新)

    最近在研究爬虫 我把和爬虫相关的内容都总结到这了 这持续更新 1 使用Python爬取妹子网的图片 批量下载 附带源码 超详细 2 爬虫实例源码下载 修改目录直接能运行 3 Python爬虫之xpath的基本使用 解析HTML详细介绍 4
  • CentOS7 最小化安装后的必备操作

    来源于 https blog csdn net f srion article details 54910943 在VM虚拟机中安装CentOS 7 时 有时候顾虑到电脑硬件性能 我们需要最小化安装 而最小化安装后与centos6的版本是有
  • 魔百盒 修改时间服务器,魔百盒网关服务器下发超时

    魔百盒网关服务器下发超时 内容精选 换一换 第三方应用在物联网平台订阅了设备服务信息变化通知后 订阅的通知类型为serviceInfoChanged 当平台向设备下发命令修改设备服务信息时 平台会向第三方应用推送通知消息 支持物联网平台向订
  • python的内置容器(list、set、tuple、dict)概念、使用及遍历方法

    容器概念 线性表 有序的容器结构 数组 array 是由连续的内存空间组成 栈 stack 先进后出 后进先出 队列 queue 先进先出 后进后出 链表 list 是由不连续的内存空间组了逻辑结构 单向链表 内存小 效率低 双向列表 内存
  • kubeadm 安装k8s

    关于k8s集群化部署 以下均是个人一步一步的完成部署 并且会罗列出在部署过程中遇到的各种问题及其解决方式 一 环境准备 环境准备阶段试用与master节点部署与work节点部署 即master和work节点全部都需要执行这些步骤 1 关闭防
  • LCR 005. 最大单词长度乘积----位掩码的使用

    题目描述 给定一个字符串数组 words 请计算当两个字符串 words i 和 words j 不包含相同字符时 它们长度的乘积的最大值 假设字符串中只包含英语的小写字母 如果没有不包含相同字符的一对字符串 返回 0 示例 1 输入 wo
  • javascript——js string 转 int 注意的问题——parseInt

  • Linux搭建C++开发调试环境的方法步骤

    安装g Linux编译C 程序必须安装g 编译器 这里使用yum方式安装 首先切换到root账号 su root 然后输入密码 执行yum install gcc c 注意不是yum install g 报错 报错是因为yum需要配置正确的
  • 安装启动配置mysql5.7_MySQL5.7多实例安装及开机启动配置(亲测)

    安装环境 CentOS版本 CentOS7 6 1810 MySQL版本 5 7 9 以前一些很low的方法是 解压两个mysql 分别放到不同文件夹 其实在mysql中已经考虑到了多实例安装的情况 也有相应的脚本命令的支持 现在安装两个m
  • 发牌程序 java

    题目要求 代码 package PokerGame import java util public class PokerGame 黑桃 红心 草花 方块 int m 牌数 int n 人数 int warning 0 有余数 int po