抽卡代码(简陋) C#

server/2024/12/2 20:04:07/

简单写了一个抽卡代码,没有修饰,用起来其实还挺难受的。抽10连的时候按0可以跳过抽取过程。

using System;
using System.Collections.Generic;
using System.Threading;class Program
{static void Main(){//随机数初始化Random random = new Random(); // 或者不使用种子值int Length = 100; // 假设我们需要100个随机数List<int> randomNumbers = new List<int>();// 生成随机数序列//定义一个值储存概率,初始概率为0.6%double p = 0.6 * 0.01;int i=0;string judge = "1";int n=0;//延迟等待时间int time = 400;//抽卡,读取开始命令,单抽或者十连抽,两个if,然后读取概率,while (true){for (int j = 0; j < Length; j++){randomNumbers.Add(random.Next(0, 1000)); // 生成0到999之间的随机数}judge = "1";Console.WriteLine("------------------------------------------");Console.WriteLine("|------       单抽按1        ------------|");Console.WriteLine("|------       十连按2        ------------|");Console.WriteLine("|------       退出按0        ------------|");Console.WriteLine("------------------------------------------");Thread.Sleep(time);//for (i=0;i<999;i++)//{//    string s= Console.ReadLine();//    if (s[0] != '\n')//    {//        n = Convert.ToInt32(s);//        break;//    }//}for (int j = 0; j < 999; j++){string s = Console.ReadLine();// 检查字符串是否为空(即用户是否只按下了回车键)if (!string.IsNullOrEmpty(s)){// 尝试将字符串转换为整数bool isNumber = int.TryParse(s, out n);if (isNumber){// 转换成功,跳出循环break;}else{// 转换失败,可以打印错误消息或采取其他措施Console.WriteLine("输入的不是一个有效的整数,请重新输入。");}}}if (n == 2)n = 10;if (n == 0)break;for (; i < 999; i++){if (n == 1){if (randomNumbers[i] <= p * 1000){Console.WriteLine("***抽中了***");}else{Console.WriteLine("没抽中");}Console.WriteLine("已经抽了{0}", i+1);Thread.Sleep(time);n = n - 1;}else if (n > 1){if (randomNumbers[i] <= p * 1000){Console.WriteLine("***抽中了***");}else{Console.WriteLine("没抽中");}if (judge == "0"){}else{Thread.Sleep(time);judge = Console.ReadLine();}n = n - 1;}else{break;}}}}
}

输出结果:

------------------------------------------
|------       单抽按1        ------------|
|------       十连按2        ------------|
|------       退出按0        ------------|
------------------------------------------
2
没抽中
0
没抽中
没抽中
没抽中
没抽中
没抽中
没抽中
没抽中
没抽中
***抽中了***
已经抽了100


http://www.ppmy.cn/server/146822.html

相关文章

【Linux】-操作系统

&#x1f511;&#x1f511;博客主页&#xff1a;阿客不是客 &#x1f353;&#x1f353;系列专栏&#xff1a;深入代码世界&#xff0c;了解掌握 Linux 欢迎来到泊舟小课堂 &#x1f618;博客制作不易欢迎各位&#x1f44d;点赞⭐收藏➕关注 ​​ 一、冯•诺依曼架构&#xff…

Maven、JAVAWeb、Servlet

知识点目标 1、MavenMaven是什么Maven项目的目录结构Maven的Pom文件Maven的命令Maven依赖管理Maven仓库JavaWeb项目 2.网络基础知识 3、ServletMaven Maven是什么 Maven是Java的项目管理工具&#xff0c;可以构建&#xff0c;打包&#xff0c;部署项目&#xff0c;还可以管理…

【逐行注释】自适应观测协方差R的AUKF(自适应无迹卡尔曼滤波,MATLAB语言编写),附下载链接

文章目录 自适应R的UKF逐行注释的说明运行结果部分代码各模块解释 自适应R的UKF 自适应无迹卡尔曼滤波&#xff08;Adaptive Unscented Kalman Filter&#xff0c;AUKF&#xff09;是一种用于状态估计的滤波算法。它是基于无迹卡尔曼滤波&#xff08;Unscented Kalman Filter&…

【机器学习】梯度消失和梯度爆炸问题

梯度消失&#xff08;Vanishing Gradient&#xff09;和梯度爆炸&#xff08;Exploding Gradient&#xff09;是深度学习训练过程中常见的两种问题&#xff0c;尤其是在使用深层神经网络&#xff08;如深度卷积神经网络或循环神经网络&#xff09;时。这两种问题都会对网络的训…

Java基础常用类库全解析

一、引言 Java 基础常用类库是 Java 编程的重要基石&#xff0c;本文将深入解析这些类库&#xff0c;帮助读者更好地理解和运用 Java 语言。 在 Java 编程中&#xff0c;基础常用类库为开发者提供了丰富的工具和功能&#xff0c;极大地提高了开发效率。这些类库涵盖了多个方面&…

【MySQL — 数据库基础】MySQL的安装与配置 & 数据库简单介绍

数据库基础 本节目标 掌握关系型数据库&#xff0c;数据库的作用掌握在Windows和Linux系统下安装MySQL数据库了解客户端工具的基本使用和SQL分类了解MySQL架构和存储引擎 1. 数据库的安装与配置 1.1 确认MYSQL版本 处理无法在 cmd 中使用 mysql 命令的情况&a…

实时数据开发|Flink实现数据输出--DataSinks操作

哇哦&#xff0c;又是快乐周五&#xff01;今天主管又又又请我们喝奶茶了&#xff0c;是乐乐茶的草莓新品。甜甜的草莓配上糯叽叽的麻薯&#xff0c;喝完好满足。这应该不是什么加班信号吧哈哈哈&#xff0c;不加不加周五要回家。 前几天被不同的bug缠身&#xff0c;今天终于正…

网络安全——浅谈HTTP协议

HTTP请求 HTTP请求是客户端往服务端发送请求动作&#xff0c;告知服务器自己的要求。 HTTP请求由状态行、请求头、请求正文三部分组成&#xff1a; 状态行&#xff1a;包括请求方式Method、资源路径URL、协议版本Version&#xff1b;请求头&#xff1a;包括一些访问的域名、…