导航:首页 > 编程语言 > java概率计算

java概率计算

发布时间:2023-02-04 18:33:04

java中如何让A的输出的概率为50%B输出的概率为30%C输出的概率为20%

publicclassTest{

publicstaticvoidmain(String[]args){
doubled=Math.random();//生成一个0~1的随机数
if(d<=0.5){
System.out.println("A");//50%概率
}elseif(d<=0.8){
System.out.println("B");//30%概率
}else{
System.out.println("C");//20%概率
}
}
}

② JAVA中如何实现概率算法,比如打架小游戏,普通攻击概率为80%,暴击为20%。 谢谢啦

几率的算法,大家不信可以进游戏看看自己各种技能伤害加成是不是这样,例如鸟的大招... 觉醒+自身一共20%暴,2+4暴击套30%,这就是50%了

③ 求java算法:根据物品的数量来确定抽奖的概率(当物品数量为0时无论如何都不可能选到)

public class Lottery {

private int m = 1000;//发放奖券的数量
private int n = 2;//奖品的数量

public boolean getLottery(){
boolean isLottery = false;
double d = (double)n/(double)m;//中奖概率
double r = Math.random();//0~1之间的随机数,包括0
if(r<d){//如果随机数小于概率 那么中奖
n--;//奖品数量-1
isLottery = true;
}
m--;//奖券数量-1
return isLottery;
}

}

④ java投掷骰子,求点数的出现概率

很简单 。
int [] num = new int[3]; //数组长度为3
int diag=0; //统计出现5的次数
for(int i=0;i>3;i++){ //掷骰子三次 ,也就是三个骰子
随机数字 num[i]=(int)(Math.random()*5)+1; //随机1-6的数字
if(num[i]==5){
diag++; //当骰子等于5的时候,统计次数加1;
}
}
double a=diag/3; //骰子出现5的次数,除以骰子总数,得到概率。
System.out.println(a);

⑤ 求一段JAVA的概率算法

public class Zhuq {
public static void main(String[] args) {
List<Person> listP=new ArrayList<Person>();
listP.add(new Person("小李", "1", 200));
listP.add(new Person("小王", "2", 210));
listP.add(new Person("小赵", "3", 230));
listP.add(new Person("小孙", "4", 100));
listP.add(new Person("小钱", "5", 3));
listP.sort(new Comparator<Person>() {

@Override
public int compare(Person o1, Person o2) {
// TODO Auto-generated method stub
return (((Person)o1).count)*(Math.random()*10+1)>(((Person)o2).count)*(Math.random()*10+1)?-1:1;
}
});
System.out.println(listP);
}
}

class Person {
String personName;
String id;
int count;

public Person(String personName, String id, int count) {
super();
this.personName = personName;
this.id = id;
this.count = count;
}
@Override
public String toString() {
return "Person [personName=" + personName + ", id=" + id + ", count=" + count + "]";
}

}
//本质还是随机数

⑥ java随机生成1-100之间的数10000次,计算出88出现得概率

package zhangyw.test;

import java.util.Random;

public class T {

public static void main(String[] args) throws Exception {
int count = 0;
Random random = new Random();
for (int i = 0; i < 10000; i++) {
int value = random.nextInt(100) + 1; //nextInt方法返回的值在0-99之间,所以需要加1
if (value == 88) {
count++;
}
}

System.out.println(count / 100.0 + "%");
}

}

⑦ java程序中概率问题

用概率模型,先随机一次看取用哪个概率,随后再随机一次。代码示例如下: import java.util.Random;public class HelloWorld { public static void main(String[] args) { Random random = new Random(); double p1=0.7; //1~4的概率 double p=(...

⑧ JAVA里 用取余算概率 应该怎么算

可以通过多次结果来统计出成功率int i=0,j=0;
while(j++<100000){
if(Math.abs(ap.nextInt())% 51 <= i1)i++;
}
//成功率应该就是 i/100000.0了 ,要更精确 把循环次数增加就好~

⑨ java中概率的问题

你的问题描述不清。
如果是别的数字是均等的,那把一个单独处理,别的数字分享17/20的概率。实际上是一个映射的问题。具体实现就是拿20个数字做random,然后取整,比如1->1,2、3->2,若是其它,则重新获取一个3的random,当然要把1和2给去掉

——————————————
那不就更容易了,剩下的不需要重新获取random了,直接就是3
————————————————————————

public static void main(String arg[]) {
System.out.println(getInt());
}
private static long getInt() {
long a = Math.round(Math.random() * 20);
if (a == 0 || a == 1) {
return 1;
} else if (a == 2) {
return 2;
} else {
return 3;
}
}

阅读全文

与java概率计算相关的资料

热点内容
光遇安卓与ios什么时候互通 浏览:598
js如何运行时编译 浏览:915
引力app在哪里下载 浏览:609
编写app如何得到钱 浏览:800
吉利汽车软件放哪个文件夹安装 浏览:223
多文件编译c 浏览:541
头顶加密后为什么反而更稀疏 浏览:793
离心机压缩机扬程高 浏览:658
xshell连接linux命令 浏览:5
把多个文件夹的内容合并在一起 浏览:483
基于单片机的浇花系统设计ppt 浏览:685
卷积码编译码及纠错性能验证实验 浏览:354
请在删除驱动器之前暂停加密什么意思 浏览:787
光催化pdf 浏览:98
java字符串包含某字符 浏览:528
ssm身份认证源码 浏览:466
预排序遍历树算法 浏览:671
加密装置如何打开ping功能 浏览:480
python下载372 浏览:903
u盘子文件夹隐藏 浏览:297