每日一题---输出100个1~6的随机整数,并求出每个数出现的概率

简介: 每日一题---输出100个1~6的随机整数,并求出每个数出现的概率

输出100个1~6的随机整数,并求出每个数出现的概率

1.if else语句控制的形式

/**
  *如果要生成随机整数就要知道Java中生成随机整数的代码是啥
  *要生成n~m其中随机整数有两种方式
  *1.int i=(int)(Math.random()*m+n);
  *2.int i=(int)(Math.random()*(m-n+1)+n);
*/
public class RandomNember
  {
    public static void main(String[] args)
      {
        System.out.println("生成100个1~6的随机数字为:");
        int a,b,c,d,e,f,n;
        n=0;
        a=0;
        b=0;
        c=0;
        d=0;
        e=0;
        f=0;
        for(int i=1;i<=100;i++)
          {
            int num=(int)(Math.random()*(6-1+1)+1);
            if(num==1)
            {
            a++;
            System.out.print(num+"\t");
            n++;
            }
            else if(num==2)
            {
            b++;
            System.out.print(num+"\t");
            n++;
            }
            else if(num==3)
            {
            c++;
            System.out.print(num+"\t");
            n++;
            }
            else if(num==4)
            {
            d++;
            System.out.print(num+"\t");
            n++;
            }
            else if(num==5)
            {
            e++;
            System.out.print(num+"\t");
            n++;
            }
            else if(num==6)
            {
            f++;
            System.out.print(num+"\t");
            n++;
            }
            if(n%10==0)
            {
            System.out.println();
            //这个输出语句是为了让每一行有十个输出的数
            }
          }
        System.out.println("1出现的概率为"+a+"%");
        System.out.println("2出现的概率为"+b+"%");
        System.out.println("3出现的概率为"+c+"%");
        System.out.println("4出现的概率为"+d+"%");
        System.out.println("5出现的概率为"+e+"%");
        System.out.println("6出现的概率为"+f+"%");
      }
  }

2.还可以改写为switch语句的形式

public class RandomNember02
{
  public static void main(String[] args)
  {
    System.out.println("生成100个1~6的随机数字为:");
    int a,b,c,d,e,f,n;
    n=0;
    a=0;
    b=0;
    c=0;
    d=0;
    e=0;
    f=0;
    for(int i=1;i<=100;i++)
    {
      int num=(int)(Math.random()*(6-1+1)+1);
      switch(num)
      {
        case 1:
        System.out.print(num+"\t");
        a++;
        n++;
        break;
        case 2:
        System.out.print(num+"\t");
        b++;
        n++;
        break;
        case 3:
        System.out.print(num+"\t");
        c++;
        n++;
        break;
        case 4:
        System.out.print(num+"\t");
        d++;
        n++;
        break;
        case 5:
        System.out.print(num+"\t");
        e++;
        n++;
        break;
        case 6:
        System.out.print(num+"\t");
        f++;
        n++;
        break;
      }
      if(n%10==0)
      { 
        System.out.println();
      }
    }
    System.out.println("1出现的概率为"+a+"%");
    System.out.println("2出现的概率为"+b+"%");
    System.out.println("3出现的概率为"+c+"%");
    System.out.println("4出现的概率为"+d+"%");
    System.out.println("5出现的概率为"+e+"%");
    System.out.println("6出现的概率为"+f+"%");
  }
}

运行结果如下:

因为生成的是随机数,所以每次运行生成的概率都不同


相关文章
|
6月前
【每日一题Day221】LC2455可被三整除的偶数的平均值 | 模拟
【每日一题Day221】LC2455可被三整除的偶数的平均值 | 模拟
49 0
|
6月前
|
Python
如何判断一个数是质数? 要求:编写一个Python函数,输入一个整数,输出该整数是否为质数。质数是指大于1的自然数中,除了1和它本身以外不再有其他因数的数。
如何判断一个数是质数? 要求:编写一个Python函数,输入一个整数,输出该整数是否为质数。质数是指大于1的自然数中,除了1和它本身以外不再有其他因数的数。
353 1
|
6月前
|
算法 测试技术 C++
【数论】【分类讨论】【C++算法】1611使整数变为 0 的最少操作次数
【数论】【分类讨论】【C++算法】1611使整数变为 0 的最少操作次数
|
6月前
每日一题(最大连续1的个数,完全数计算)
每日一题(最大连续1的个数,完全数计算)
32 0
|
6月前
|
机器学习/深度学习 存储 算法
数据结构与算法面试题:给定非负整数 m 和 n,计算不大于 m 的数字中,素数的个数。(提示:算法原理为埃氏筛、线性筛)
数据结构与算法面试题:给定非负整数 m 和 n,计算不大于 m 的数字中,素数的个数。(提示:算法原理为埃氏筛、线性筛)
92 0
华为机试HJ58:输入n个整数,输出其中最小的k个
华为机试HJ58:输入n个整数,输出其中最小的k个
|
Java 测试技术
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
214 0
Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
分解质因数---输出一个数的所有质数因子
分解质因数---输出一个数的所有质数因子
151 0
随即输入10个数,并求10个整数最大值
随即输入10个数,并求10个整数最大值
99 0
随即输入10个数,并求10个整数最大值
L2-018 多项式A除以B (25 分)(数组模拟)
L2-018 多项式A除以B (25 分)(数组模拟)
175 0
L2-018 多项式A除以B (25 分)(数组模拟)