12.24总结---斗地主案例

java斗地主案例

//导包
import java.util.ArrayList;
//需要使用到util下的数组集合包,以及collections工具类
import java.util.Collections;
public class demo01 {
    public static void main(String[] args) {
    //创建一个String类型的集合,用来存放总的牌
        ArrayList<String> poker = new ArrayList<>();
        //定义一个数组,存放所有种类的牌
        String[] numbers = {"2", "A", "K", "Q", "J", "10", "9", "8", "7", "6", "5", "4", "3"};
        //定义一个数组,存放所有的花色
        String[] colors = {"黑桃", "红桃", "方片", "梅花"};
       // 因为大王和小王是特殊的,所以需要额外的添加进去
        poker.add("大王");
        poker.add("小王");
        //使用增强for循环,双循环嵌套
        //目的:使用字符串拼接的方法,把两个数组嵌套组合一下
        for (String number : numbers) {
            for (String color : colors) {
            //把组合好的花色牌,使用add方法添加到poker里面
                poker.add(color + number);
            }
        }
        //创建四个数组,分别存放1,2,3玩家以及底牌
         ArrayList<String> player1 = new ArrayList<>();
        ArrayList<String> player2 = new ArrayList<>();
        ArrayList<String> player3 = new ArrayList<>();
        ArrayList<String> diPd = new ArrayList<>();
//        System.out.println(poker.size());  自己可以测试牌的个数
//根据索引判断牌是属于谁
//使用索引,因为一共有54张牌,所以索引是53
//先给底牌存储进去
for (int i = 0;i<poker.size();i++){
//使用数组的get方法,获取值
    String p = poker.get(i);
    //判断属于谁,然后使用add方法,添加进去
    if (i>=51){
        diPd.add(p);
    }else if (i%3==0){
        player1.add(p);
    }else if (i%3==1){
        player2.add(p);
    }else {
        player3.add(p);
    }
}
        System.out.println("玩家1"+player1);
        System.out.println("玩家2"+player2);
        System.out.println("玩家3"+player3);
        System.out.println("底牌"+diPd);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用Matlab中的FFT函数进行谐波分析,基于提供的数据,可以按照以下步骤编写程序: 1. 定义给定数据的采样频率 `fs`,根据数据中的时间间隔计算得出,即 `fs = 1 / (时间间隔)`; 2. 对输入数据进行FFT变换,使用fft函数,得到频域数据 `Y`; 3. 计算基波幅值 `fundamental`,即第一个频率分量的幅值,即 `abs(Y(1))`; 4. 计算2到11次谐波幅值 `harmonics`,即第2到11个频率分量的幅值,即 `abs(Y(2:11))`; 5. 输出结果。 下面是一个可能的Matlab程序: ``` % 定义时间间隔和数据 t = [0 0.000208333 0.000416667 0.000625 0.000833333 0.001041667 0.00125 0.001458333 0.001666667 0.001875 0.002083333 0.002291667 0.0025 0.002708333 0.002916667 0.003125 0.003333333 0.003541667 0.00375 0.003958333 0.004166667 0.004375 0.004583333 0.004791667 0.005 0.005208333 0.005416667 0.005625 0.005833333 0.006041667 0.00625 0.006458333 0.006666667 0.006875 0.007083333 0.007291667 0.0075 0.007708333 0.007916667 0.008125 0.008333333 0.008541667 0.00875 0.008958333 0.009166667 0.009375 0.009583333 0.009791667 0.01 0.010208333 0.010416667 0.010625 0.010833333 0.011041667 0.01125 0.011458333 0.011666667 0.011875 0.012083333 0.012291667 0.0125]; y = [15.92 15.68 15.52 15.04 14.6 14.08 12.96 12.24 10.96 9.76 8.28 6.8 5.56 3.24 1.72 -0.76 -3 -5.24 -6.76 -8.4 -10.24 -11.32 -12.72 -14.4 -15.2 -16.28 -16.6 -17.28 -17.44 -17.24 -17.32 -17.04 -16.84 -16.04 -15.88 -15.16 -14.08 -13.32 -12.04 -10.88 -10.16 -7.96 -6.4 -4.72 -2.36 -0.48 2.08 3.8 5.92 7.32 8.88 10.36 11.64 12.88 13.72 14.84 15.44 15.76 15.96 16.04 15.52]; % 计算采样频率 fs = 1 / (t(2) - t(1)); % 计算FFT变换 Y = fft(y); % 计算基波幅值 fundamental = abs(Y(1)); % 计算2到11次谐波幅值 harmonics = abs(Y(2:11)); % 输出结果 fprintf('基波幅值: %.2f\n', fundamental); fprintf('2到11次谐波幅值: %.2f ', harmonics); fprintf('\n'); ``` 注意:这个程序假设您提供的数据是一个完整的周期数据,如果不是一个完整的周期数据需要进行预处理,例如使用窗函数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值