最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)雙色球抽獎算法

 更新時間:2020年05月20日 09:02:48   作者:PowerAlan  
這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)雙色球抽獎算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java實現(xiàn)雙色球抽獎的具體代碼,供大家參考,具體內(nèi)容如下

實現(xiàn)雙色球先考慮整體思路:

1.隨機生成7位數(shù)的數(shù)組為大獎號碼(前6位紅球每個數(shù)值取值范圍為1~33,而且6個數(shù)值不能相同,第七位籃球取值范圍為1~16)
2.判斷購買號碼為手動輸入還是機選(如為手動輸入,將用for循環(huán)一次從控制臺輸入一個依次數(shù)賦值到數(shù)組;如為機選,實現(xiàn)代碼和 1. 中相同)
3.將大獎號碼和購買號碼的前6位紅球分別實現(xiàn)升序排列
4.判斷大獎號碼和購買號碼的號碼匹配程度來確定得獎級別或者沒有得獎,并將結(jié)果輸出到控制臺

實現(xiàn)代碼具體如下:

//導(dǎo)包
import java.util.*;
class TestDouble01 
{
  public static void main(String[] args) 
  {
    Scanner s = new Scanner(System.in);
    Random ran = new Random();
    //隨機生成大獎號碼
    int arr2[]=new int[7];
    int shu =33;
    for (int i=0;i<arr2.length ;i++ )
    {
      boolean flag2=true;
      while (flag2)
      {
        if(i==6){
          shu = 16;
        }
        int b = ran.nextInt(shu)+1;
        int num2=0;
        for (int j=0;j<arr2.length ;j++ )
        {
          if (b==arr2[j])
          {
            num2++;
          }
        }
        if (num2==0)
        {
          arr2[i]=b;
          flag2=false;
        }
      }
    }
    //判斷購買號碼的生成方式
    boolean flag=true;

    int arr1[]=new int[7];
    while(flag){
      System.out.println("請選擇機選還是手選:1、機選;2、手選;3、退出 (請輸入對應(yīng)序號)");
      int xz=s.nextInt();
      if (xz == 1)
      {
        int shu1 = 33;
        //隨機生成購買號碼
        for (int i=0;i<arr1.length ;i++ )
        {
          boolean flag1=true;
          while (flag1)
          {
            if (i==6)
            {
              shu1=16;
            }
            int a = ran.nextInt(shu1)+1;
            int num1=0;
            for (int j=0;j<arr1.length ;j++ )
            {
              if (a==arr1[j])
              {
                num1++;
              }
            }
            if (num1==0)
            {
              arr1[i]=a;
              flag1=false;
            }
          }
        }
        flag=false;
      }else if (xz==2)
      {  
        //手動輸入
        for (int i=0;i<arr1.length ;i++ )
        {
          System.out.println("請輸入第"+(i+1)+"個數(shù):");
          arr1[i]=s.nextInt();
        }
        s.close();
      }else if (xz==3)
      {
        //退出
        flag=false;
      }else{
        System.out.println("請輸入正確的序號");
      }
    }
    //將隨機的大獎數(shù)組前6位紅球升序排列
    for(int j=0;j<=arr1.length-2;j++){
      for (int i = 0;i<arr1.length-2-j;i++ )
      {
        if (arr1[i]>arr1[i+1])
        {
          arr1[i]=arr1[i]+arr1[i+1];
          arr1[i+1]=arr1[i]-arr1[i+1];
          arr1[i]=arr1[i]-arr1[i+1];
        }
      }
    }
    //將隨機的購買數(shù)組前6位紅球升序排列
    for(int j=0;j<=arr2.length-2;j++){
      for (int i = 0;i<arr2.length-2-j;i++ )
      {
        if (arr2[i]>arr2[i+1])
        {
          arr2[i]=arr2[i]+arr2[i+1];
          arr2[i+1]=arr2[i]-arr2[i+1];
          arr2[i]=arr2[i]-arr2[i+1];
        }
      }
    }

    //輸出打印大獎號碼和購買號碼
    System.out.println("購買號碼為:"+Arrays.toString(arr1));
    System.out.println("大獎號碼為:"+Arrays.toString(arr2));


    //判斷獎項
    //查詢兩個數(shù)組中前6位數(shù)字相同的數(shù)量
    int num = 0;
    for (int i=0;i<arr1.length-1 ;i++ )
    {
      for (int j=0;j<arr2.length-1 ;j++ )
      {
        if (arr2[i]==arr1[j])
        {
          num++;
        }
      }
    }
    //由相同的數(shù)字?jǐn)?shù)量判斷獎項
    System.out.println(num);
    System.out.println(arr1[6]==arr2[6]);
    if (arr1[6]==arr2[6])
    {
      if (num==6){
        System.out.println("恭喜您獲得一等獎");
      }else if (num==5){
        System.out.println("恭喜您獲得三等獎");
      }else if (num==4){
        System.out.println("恭喜您獲得四等獎");
      }else if (num==3){
        System.out.println("恭喜您獲得五等獎");
      }else if (num==2 || num==1 || num==0){
        System.out.println("恭喜您獲得六等獎");
      }else{
        System.out.println("您未獲獎,再接再厲");
      }
    }else{
      if (num==6){
        System.out.println("恭喜您獲得二等獎");
      }else if (num==5){
        System.out.println("恭喜您獲得四等獎");
      }else if (num==4){
        System.out.println("恭喜您獲得五等獎");
      }else{
        System.out.println("您未獲獎,再接再厲");
      }
    }
  }
}

代碼運行結(jié)果如下:

由于獲獎為概率問題,所以想獲得到結(jié)果為大獎的幾率很低,大多數(shù)為:“未獲獎 ”屬于正?,F(xiàn)象。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談SpringBoot中的Bean初始化方法?@PostConstruct

    淺談SpringBoot中的Bean初始化方法?@PostConstruct

    這篇文章主要介紹了SpringBoot中的Bean初始化方法?@PostConstruct,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • nodejs連接dubbo服務(wù)的java工程實現(xiàn)示例

    nodejs連接dubbo服務(wù)的java工程實現(xiàn)示例

    這篇文章主要介紹了在項目遷移中,nodejs連接dubbo服務(wù)的java工程實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-03-03
  • springboot集成tkmapper及基本使用教程

    springboot集成tkmapper及基本使用教程

    tk.mybatis可以節(jié)省程序員的大部分時間,對于程序員來說關(guān)于一張表的操作無非就是增刪改查,tk.mybatis提供了一些基本操作的SQL語句,比如說按表的主鍵查詢、刪除等基本操作,我們接下來就來介紹一些springboot集成tkmapper及基本使用
    2022-11-11
  • Java中多種循環(huán)Map的常見方式詳解

    Java中多種循環(huán)Map的常見方式詳解

    Java中的Map是一種鍵值對存儲的數(shù)據(jù)結(jié)構(gòu),其中每個鍵都唯一,與一個值相關(guān)聯(lián),下面這篇文章主要給大家介紹了關(guān)于Java中多種循環(huán)Map的常見方式,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2024-01-01
  • java堆排序原理與實現(xiàn)方法分析

    java堆排序原理與實現(xiàn)方法分析

    這篇文章主要介紹了java堆排序原理與實現(xiàn)方法,結(jié)合實例形式分析了java堆排序的相關(guān)原理、實現(xiàn)方法與操作注意事項,需要的朋友可以參考下
    2018-12-12
  • mybatis項目實現(xiàn)動態(tài)表名的三種方法

    mybatis項目實現(xiàn)動態(tài)表名的三種方法

    有時在開發(fā)過程中java代碼中的表名和數(shù)據(jù)庫的表名并不是一致的,此時我們就需要動態(tài)的設(shè)置表名,本文主要介紹了mybatis項目實現(xiàn)動態(tài)表名的三種方法,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • AbstractQueuedSynchronizer內(nèi)部類Node使用講解

    AbstractQueuedSynchronizer內(nèi)部類Node使用講解

    這篇文章主要為大家介紹了AbstractQueuedSynchronizer內(nèi)部類Node使用講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • Java8新特性Lambda表達(dá)式的一些復(fù)雜用法總結(jié)

    Java8新特性Lambda表達(dá)式的一些復(fù)雜用法總結(jié)

    lambda表達(dá)式是JAVA8中提供的一種新的特性,它支持Java也能進行簡單的“函數(shù)式編程”。 下面這篇文章主要給大家介紹了關(guān)于Java8新特性Lambda表達(dá)式的一些復(fù)雜用法的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • Struts2單選按鈕詳解及枚舉類型的轉(zhuǎn)換代碼示例

    Struts2單選按鈕詳解及枚舉類型的轉(zhuǎn)換代碼示例

    這篇文章主要介紹了Struts2單選按鈕詳解及枚舉類型的轉(zhuǎn)換代碼示例,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • 詳解Spring Boot 定制HTTP消息轉(zhuǎn)換器

    詳解Spring Boot 定制HTTP消息轉(zhuǎn)換器

    本篇文章主要介紹了詳解Spring Boot 定制HTTP消息轉(zhuǎn)換器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論

庆阳市| 南澳县| 兴业县| 乐亭县| 缙云县| 绥化市| 鸡东县| 凤城市| 新巴尔虎右旗| 广宁县| 司法| 巴青县| 沅陵县| 辽阳县| 绥芬河市| 镇赉县| 灵台县| 莫力| 新邵县| 沽源县| 开阳县| 宁安市| 商洛市| 沈阳市| 新化县| 永丰县| 临高县| 西青区| 右玉县| 茂名市| 琼结县| 元阳县| 崇信县| 酉阳| 红河县| 平山县| 霍州市| 秦皇岛市| 卓资县| 宜丰县| 汾西县|