用随机数列模拟抛硬币

先粘贴上代码

package djbc;

import java.util.Random;
import java.util.Scanner;

public class Lian {
public static void main(String[] args) {
int i=0,k=0,t=0;  
System.out.println("请输入要抛的次数");
Scanner scan=new Scanner(System.in);//输入抛硬币的次数
t=scan.nextInt();
Random random=new Random();//调用Random方法,随机生成【0,1)数列范围中的一个数
for(int j=0;j<t;j++) {
double d=random.nextDouble();//将随机生成的值赋给d;
if(d<0.5) {
i++;       
}else {
k++;
}
}
System.out.println("正面:"+i+" 反面: "+k);

}

}

//因为判断条件:d<0.5,和1.0>d>=0.5的范围相同,且满足概率相加为一。所以,与抛硬币的方式相同

输出样例:

原文地址:https://www.cnblogs.com/ycl11/p/11380152.html

时间: 2024-08-07 05:13:23

用随机数列模拟抛硬币的相关文章

模拟抛硬币(C语言实现)

实现代码: 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 int heads() 5 { 6 return rand() < RAND_MAX/2; 7 } 8 9 int main(int argc, char *argv[]) 10 { 11 int i,j,cnt; 12 int N = atoi(argv[1]), M = atoi(argv[2]); 13 int *f = malloc((N+1)*sizeof(int)

HZOI20190908模拟40 队长快跑,影魔,抛硬币 题解

题面:https://www.cnblogs.com/Juve/articles/11487699.html 队长快跑: 权值线段树与dp yy的不错 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> using namespace std; const int MAXN=1e5+5; int n,a[MAXN],b[

模拟投掷硬币100次

/*模拟投掷硬币*/#include<stdio.h>#include<stdlib.h>#include<time.h>int flip();/*声明函数*//*主函数*/int main(void){ int n,i,front,back; front=0; back=0;/*初始化*/ time_t t; srand((unsigned int)time(&t));/*根据时间产生不同的随机数*/ for(n=0;n<100;n++)/*进入投掷10

js模拟抛出球运动

js练手之模拟水平抛球运动 -匀加速运动 -匀减速运动 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>js模拟抛出球运动</titl

抛硬币的两种思维方式

抛硬币是经典统计学中最基础的案例,无论是理论还是实验,都证明了50%这个概率,而且抛的次数越多,越接近这个值. 我们来看看一下这个问答:(以下对话例子来源于塔勒布的<黑天鹅>) A:假设硬币是公平的,因为每次抛出硬币得到正面与反面的可能性都是相同的.我把它抛出了99次,每次都正好得到正面.那么,我下一次得到反面的概率是多大? 回答者1(统计学家):毫无疑问,当然是50%,因为统计学中的样本独立性,不管你前面得到了什么结果,与下一次的结果都无关,所以可能性依然是50%. 好吧,对于学过统计的人,

csu 1009 抛硬币

C - 抛硬币 CSU - 1009 James得到了一堆有趣的硬币,于是决定用这些硬币跟朋友们玩个小游戏.在一个N行M列的表格上,每一个第i行第j列的格子上都放有一枚James的硬币,抛该硬币正面朝上的概率为Pij,所有抛硬币事件两两之间是相互独立的. 现在,玩家在M列硬币中,从每一列里各选择1枚,共M枚,构成一组.如此重复选择N组出来,且保证被选择过的硬币不能再选.选好组之后,每组的M枚硬币各抛一次,如果都是正面朝上,则该组胜利,总分赢得1分:否则该组失败,总分不加也不减.请问,如果让你自行

关于随机数列,对给定数目的自0开始步长为1的数字序列进行乱序。(可用作洗牌)

1 /** 2  * 数组乱序类 3  * @author noam  4  */ 5 public class NRandom { 6  7     /** 8      * 对给定数目的自0开始步长为1的数字序列进行乱序 9      * @param no 给定数目10      * @return 乱序后的数组11      */12     public static int[] getSequence(int no) {13         int[] sequence = new 

在lua中 获取1到n的随机数列

之前工作上有一个方法经常用到,就是获取1到n的一个随机数列,数列中不能有重复的数字,也就是1,2,3,4,5 生成2,1,3,4,5或者5,4,3,2,1这样的随机队列. 这里我就把自己的lua实现贴在这里以供以后参考:感觉这个方法效率还是不错的. function getRandomList(length) local temp = {} local chosen_list = {} for i = 1, length do table.insert(chosen_list, i) end f

[AH/HNOI2017]抛硬币

题目描述 小 A 和小 B 是一对好朋友,他们经常一起愉快的玩耍.最近小 B 沉迷于**师手游,天天刷本,根本无心搞学习.但是已经入坑了几个月,却一次都没有抽到 SSR,让他非常怀疑人生.勤勉的小 A 为了劝说小 B 早日脱坑,认真学习,决定以抛硬币的形式让小 B 明白他是一个彻彻底底的非洲人,从而对这个游戏绝望.两个人同时抛 b 次硬币,如果小 A 的正面朝上的次数大于小 B 正面朝上的次数,则小 A 获胜. 但事实上,小 A 也曾经沉迷过拉拉游戏,而且他一次 UR 也没有抽到过,所以他对于自