思路如下:
1.在控制台中购买一注彩票的方法
--请输入第i号红球的号码
--输入要求:①输入范围为1-33②输入不能重复
2.随机生成一注彩票的方法
--随机数random.Next(1,34)  (意思是从1开始,同时小于34)
--要求①从小到大排列②不能重复
3.开奖,即匹配输入和生成的彩票,返回中奖等级(写一方法)
要分别计算红球和蓝球猜中的数量
在main中进行测试

static void Main(){int[]arr1=BuyLottery();int count=0;int level;do{count++;int[]arr2=RandomLottery(); level = TicketsEquals(arr1, arr2);if (level != 0)Console.WriteLine("恭喜,中了{0}等奖,共花费{1:c}元", level, count*2);} while (level != 1);}private static int[] BuyLottery(){int[] arr1 = new int[7];                   //数组只放红球号数,蓝球可以不放数组里,不然不方便排序for (int i = 0; i < 6; ){Console.WriteLine("请输入第{0}个红球的号码",i+1);int num = int.Parse(Console.ReadLine());if(num>0&&num<=33&&Array.IndexOf(arr1,num)<0)    //这一步同时确认范围正确和输入未重复,才能继续输入,否则i不+1//arr1[i++] = num;                                   //(这里应该是搜索num对应的值是否在数组里存在!不是搜arr[i]!) //array.indexof的值为-1时表示数组里没有要查询的元素,即未重复else if (num <= 0 || num > 33)                                                                //之前因为这个错,测试时一直提示输入重复,铸币!{Console.WriteLine("输入范围有误!");}else if (Array.IndexOf(arr1, num) >=0){Console.WriteLine("输入重复!");}}Array.Sort(arr1,0,6);while(true){Console.WriteLine("请输入蓝球的号码");int blue1 = int.Parse(Console.ReadLine());if (blue1 >= 1 || blue1 <= 16){arr1[6] = blue1;break;}else Console.WriteLine("超过输入范围!");} //红球排完序后把蓝球放最后return arr1;}//生成随机彩票private static int[] RandomLottery(){int[] arr2 = new int[7];int number = 0;for (int i = 0; i < 6; ){Random red = new Random(); //生成随机数number = red.Next(1, 34);if(Array.IndexOf(arr2,number)<0)   //判断过程和输入一注彩票时相似arr2[i++] = number;}Array.Sort(arr2,0,6);Random blue = new Random(); //生成随机数int blue2 = blue.Next(1, 17);arr2[6] = blue2;return arr2;}private static int TicketsEquals(int[] arr1, int[] arr2){//这里不应再声明数组或调用上面生成数组的方法,有形式参数就行,不用管arr1从哪来,否则会一直调用,让你一直输入//arr1是在buylottery里面输入的,在ticketsequals里面只是调用,这样就只需要在控制台输入一次int count1 = 0;int count2 = 0;for (int i = 0; i < 6; i++){if (Array.IndexOf(RandomLottery(), arr1[i], 0, 6)>=0)count1++;}if (arr1[6] == arr2[6])count2 ++;int level;if (count1 + count2 == 7)level = 1;else if (count1 == 6 && count2 == 0)level = 2;else if (count1 == 5 && count2 == 1)level = 3;else if (count1 + count2 == 5)level = 4;else if (count1 + count2 == 4)level = 5;else if (count1 == 2 && count2 == 1)level = 6;else //这里之前条件没写对,调试时啥也没显示-_-||,还不如不写level = 0;return level;}}
}

伪随机实现方法还可以在进一步学习后进行优化,这里只用了C#默认的random.Next方法

C#实现简单的双色球模拟器相关推荐

  1. 利用python写一个简单的双色球彩票系统

    利用python写一个简单的双色球彩票系统 1.设置每次买的号码一样 写一个双色球彩票系统,系统可以随机产生一组数据,一组彩票数据有六位数,这六位数的的取值范围是0和1. 一张彩票是两块钱,用户可以选 ...

  2. 【C#基础】简单的双色球彩票模拟介绍

    欢迎大家一起交流学习 目录 前言 一.双色球原理介绍 二.具体实现 1.买票函数 2.创建机选球 3.比较函数 三.主函数 四.测试 总结 前言 本文介绍了简单的双色球彩票模拟介绍的基础内容. 提示: ...

  3. Python简单实现双色球功能

    Python简单实现双色球功能 一.程序说明 二.代码实现 三.运行结果 一.程序说明 还程序简单实现了通过用户输入机选几注后,随机选出双色球结果,且一组结果中的号码不会出现重复现象,对号码也是进行背 ...

  4. 小练习 简易双色球模拟器

    刚刚吃饭的时候在csdn上看到一个简易的双色球模拟器题目 正好拿来练习一下 本题目所用到的知识点并不多,主题思路就是 生成随机数程序生成一个随机数,每次存到数组里的同时要检查一下与数组内前几个数是否相 ...

  5. PHP实现简单的双色球机选号码

    <?php header('Content-Type: text/html; charset=utf-8');//PHP实现双色球机选号码$red = range(1, 33);//初次设定红球 ...

  6. 使用python的random()随机函数编写一个简单的双色球项目

    python中的random()函数常见函数如下: import randomprint( random.randint(1,10) ) # 产生 1 到 10 的一个整数型随机数 print( ra ...

  7. C#-------实现简单的双色球彩票生成器

    首先,介绍一下双色球彩票规则: 一.投注方式 1.标准投注 从红球号码中选择6个号码,从蓝球号码中选择1个号码为一注,红球最多可选20个号码,蓝球最多可全选.单注最高奖金可达1000万元. 2.胆拖投 ...

  8. JAVA简单编写双色球随机摇号

    //双色球选号public static void main(String[] args) {Random ran = new Random();//实例化一个随机对象int a = ran.next ...

  9. 用python做一个简单的双色球系统

    #初始化开奖号码 import random kaijiang_red=[x for x in range(1, 21)] kaijiang_red_ball=random.sample(kaijia ...

最新文章

  1. oracle中master实例,oracle基础(基本介绍)
  2. UML工具 MAGICDraw
  3. 配置文件http://www.cnblogs.com/Jevon-ran/p/7112007.html
  4. 10本计算机视觉必读经典图书,入门篇 + 提升篇
  5. ECMAScript5 ES5
  6. ubuntu安装搜狗输入法-全面版
  7. 如果征信有这些行为,申请房贷直接被拒绝
  8. 图的基本概念【数据结构】
  9. 剑指offer_02
  10. api.php phpcms,phpcms程序api怎么写接口
  11. JS实现前端动态分页码
  12. Quartz调用大全
  13. 关于SO引用的过滤:abiFilters
  14. 安装sw时出现sldim停止工作_脉冲滤筒除尘器的安装有哪些小常识
  15. Microsoft .NET Framework 3.5 SP1 简体中文精简版+.net
  16. 一款开源Android在线音乐播放器
  17. ut-890/485-usb驱动 FOR Linux
  18. Python实例:小游戏20148
  19. Golang 之 IED 安装(mac)
  20. java 列表伸缩,微服务实例自动弹性伸缩实践

热门文章

  1. 写简历有疑惑?戳进来找答案!
  2. java字符串String
  3. 想要减少广告浪费,你需要学会这些设计常识
  4. 计算机毕业设计Java宁夏中卫城市风采在线系统开发(源码+系统+mysql数据库+lw文档)
  5. AI做了什么,才能惊艳到你?
  6. Extractor.app学习
  7. selenium 打开火狐浏览器版本兼容问题踩的坑
  8. js对时间日期判断今天昨天明天
  9. 坐标系统与投影变换及在ARCGIS中的应用
  10. Unity之Microphone如何实现录音和播放