导航:首页 > 编程语言 > 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概率计算相关的资料

热点内容
一个真正隐世的程序员 浏览:822
饥荒联机为什么开不了服务器 浏览:28
程序员的甜品制作方法 浏览:200
找几本关于程序员职场的小说 浏览:356
拼多多app这是怎么回事 浏览:811
程序员那么可爱小说作者 浏览:204
pdf文件打不开怎么办 浏览:607
数字化校园系统源码 浏览:194
androidxml虚线 浏览:861
小学生催眠按摩解压视频 浏览:417
报修管理系统源码 浏览:76
java打印调用栈 浏览:792
网页加密视频怎么下载 浏览:555
程序员上班了可以学什么有用 浏览:564
程序员的谋生手段 浏览:431
泉州电视台直播源码 浏览:682
路径规划算法比较 浏览:87
墨刀开发APP如何设置背景图片 浏览:139
软件设计师教程pdf 浏览:727
python数据同时给多个线程 浏览:152