模仿地下城与壮士 (DNF) 的配备强化
tip1:
DNF 配备强化在 +1~+3 不会失败;
+4~+7,失败后物品原有强化等级升高 1 级;
+8~+10,失败后掉 3 级;
10 上 11 或以上就爆了。
tip2:
DNF 配备强化 1~3 级,成功率 100%
DNF 配备强化 3~4 级,成功率 95%
DNF 配备强化 4~5 级,成功率 90%
DNF 配备强化 5~6 级,成功率 80%
DNF 配备强化 6~7 级,成功率 75%
DNF 配备强化 7~8 级,成功率 62.1%
DNF 配备强化 8~9 级,成功率 53.7%
DNF 配备强化 9~10 级,成功率 41.4%
DNF 配备强化 10~11 级,成功率 33.9%
DNF 配备强化 11~12 级,成功率 28%
DNF 配备强化 12~13 级,成功率 20.7%
DNF 配备强化 13~14 级,成功率 17.3%
DNF 配备强化 14~15 级,成功率 13.6%
DNF 配备强化 15~16 级,成功率 10.1%
要求输出配备的原始等级,输出 1 执行强化,依据原始等级以及强化的成功率,显示配备的强化后果
残缺代码如下:
package lesson;
/**
- 模仿地下城与壮士 (DNF) 的配备强化过程
*/
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
// 创立输出对象
Scanner shuru = new Scanner(System.in);
// 用户输出强化等级
System.out.println("请输出强化等级:");
int a = shuru.nextInt();
System.out.println("请输出 1 开始强化:");
int b = shuru.nextInt();
// 创立随机概率
double m = Math.random();
switch(a) {
case 0:
case 1:
case 2:
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
break;
case 3:
if(m<0.95) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a--;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 4:
if(m<0.90) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a--;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 5:
if(m<0.80) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a--;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 6:
if(m<0.621) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a--;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 7:
if(m<0.537) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a-=3;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 8:
if(m<0.414) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a-=3;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 9:
if(m<0.339) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a-=3;
System.out.println("您的配备强化失败,等级为:"+a);
}
break;
case 10:
if(m<0.28) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
case 11:
if(m<0.207) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
case 12:
if(m<0.173) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
case 13:
if(m<0.136) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
case 14:
if(m<0.75) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
case 15:
if(m<0.101) {
a++;
System.out.println("您的配备强化胜利,等级为:"+a);
}else {
a=0;
System.out.println("您的配备爆了!");
}
break;
default:
System.out.println("输出谬误!");
break;
}
}
}
总结了一些 2020 年的面试题,这份面试题的蕴含的模块分为 19 个模块,别离是:Java 根底、容器、多线程、反射、对象拷贝、JavaWeb 异样、网络、设计模式、Spring/Spring MVC、SpringBoot/SpringCloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM。
获取材料以上材料:关注公众号:有故事的程序员,获取学习材料。
记得点个关注 + 评论哦~