简单的dnf增幅模拟器

简单的DNF增幅模拟器

package com.xxx;

import java.util.Random;

public class Equipmet {
    int level;
    int level_max;
    public Equipmet(){
        level_max=0;
        level=12;
    };
    public Equipmet(int level,int level_max){
        this.level=level;
        this.level_max=level_max;
    };
    public  boolean Strengthen(){
        Random r=new Random();
        if(this.level==-1){
            System.out.println(" 武器已损坏!!!");
        }
        else if(this.level<=3){
            //增幅成功概率为100%
            this.level++;
            System.out.println("强化成功,现在等级是"+this.level);
            this.level_max=this.level>this.level_max?this.level:this.level_max;
        }
        else if (this.level==4){
            //增幅成功概率为80%
            int number=r.nextInt(101);
            if (number>20){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level--;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==5){
            //增幅成功概率为70%
            int number=r.nextInt(101);
            if (number>30){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level--;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==6){
            //增幅成功概率为60%
            int number=r.nextInt(101);
            if (number>40){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level--;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==7){
            //增幅成功概率为70%
            //9失败到6
            //8失败到5
            //7失败到4
            int number=r.nextInt(101);
            if (number>30){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=4;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==8){
            //增幅成功概率为60%
            //9失败到6
            //8失败到5
            //7失败到4
            int number=r.nextInt(101);
            if (number>40){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=5;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==9){
            //增幅成功概率为50%
            //9失败到6
            //8失败到5
            //7失败到4
            int number=r.nextInt(101);
            if (number>50){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=6;
                System.out.println("强化失败,现在等级是"+this.level);
            }
        }
        else if (this.level==10){
            int number=r.nextInt(101);
            if (number>60){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=-1;
                System.out.println("增幅失败,武器损坏!!!");
            }
        }
        else if (this.level==11){
            int number=r.nextInt(101);
            if (number>70){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=-1;
                System.out.println("增幅失败,武器损坏!!!");
            }
        }
        else {
            int number=r.nextInt(101);
            if (number>80){
                this.level++;
                System.out.println("强化成功,现在等级是"+this.level);
                this.level_max=this.level>this.level_max?this.level:this.level_max;
            }
            else {
                this.level=-1;
                System.out.println("增幅失败,武器损坏!!!");
            }
        }
        return false;
    }
}

主函数
public static void main(String[] args) {
        final int  my_equiment=100000;
        Equipmet ee[] ;
        ee=new Equipmet[my_equiment];
        for (int i=0;i<my_equiment;i++){
            ee[i]=new Equipmet();
        }
        for(int i=0;i<my_equiment;i++){
            for (;ee[i].level!=-1;){
                ee[i].Strengthen();
            }
        }
        int max_max=0;
        for (int i=0;i<my_equiment;i++){
            max_max=ee[i].level_max>max_max?ee[i].level_max:max_max;
        }
        System.out.println("最高增幅"+max_max);


    }

模拟9999999把增幅10武器最高能上到多少:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值