当前位置: 首页 > article >正文

C++版俄罗斯赌盘(爽到飞起)

俄罗斯赌盘是一款比较火的网络游戏而今天我用c加加代码复原了他接下来请大家尽情欣赏源代码:#include iostream#include vector#include queue#include cstdlib#include ctime#include algorithm#include random#include chrono#include string#include mapusing namespace std;// 道具枚举enum Item {CANDY, // 棒棒糖恢复1点生命CONVERTER, // 转换器转换下一发子弹类型HANDCUFF, // 手铐跳过下一发子弹DRINK, // 饮料重新洗牌子弹ITEM_COUNT};// 道具名称映射const mapItem, string ITEM_NAMES {{CANDY, 棒棒糖},{CONVERTER, 转换器},{HANDCUFF, 手铐},{DRINK, 饮料}};int main() {// 初始化随机种子srand(time(0));auto seed chrono::system_clock::now().time_since_epoch().count();default_random_engine rng(seed);// 玩家状态int health 3;int skipCount 0;queuebool bullets; // true实弹, false空弹mapItem, int inventory {{CANDY, 0},{CONVERTER, 0},{HANDCUFF, 0},{DRINK, 0}};// 随机生成子弹 (5-8发)int totalBullets rand() % 4 5;int liveCount rand() % 3 1; // 1-3发实弹int blankCount totalBullets - liveCount;vectorbool tempBullets;for (int i 0; i liveCount; i) tempBullets.push_back(true);for (int i 0; i blankCount; i) tempBullets.push_back(false);shuffle(tempBullets.begin(), tempBullets.end(), rng);for (bool b : tempBullets) bullets.push(b);// 随机生成道具 (0-3个)for (int i 0; i ITEM_COUNT; i) {inventory[static_castItem(i)] rand() % 4;}// 显示初始状态cout 俄罗斯轮盘赌游戏 endl;cout 初始子弹: totalBullets 发 (实弹: liveCount , 空弹: blankCount )\n;cout 初始道具:\n;for (auto item : inventory) {cout ITEM_NAMES.at(item.first) : item.second 个\n;}cout ----------------------------\n;// 游戏主循环while (health 0 !bullets.empty()) {// 显示状态cout \n生命值: health ❤️ | 剩余子弹: bullets.size() | 跳过次数: skipCount endl;cout 道具: ;for (auto item : inventory) {if (item.second 0) {cout ITEM_NAMES.at(item.first) × item.second ;}}cout endl;// 玩家选择cout \n请选择操作:\n;cout 1. 开枪\n;cout 2. 使用道具\n;cout 3. 退出游戏\n;cout ;int choice;cin choice;// 处理选择if (choice 1) { // 开枪if (skipCount 0) {// 跳过子弹bool skipped bullets.front();bullets.pop();bullets.push(skipped);skipCount--;cout 使用手铐跳过一发子弹 ( (skipped ? 实弹 : 空弹) 已移到队列末尾)\n;} else {// 正常开枪bool bullet bullets.front();bullets.pop();if (bullet) {health--;cout 砰实弹失去1点生命\n;if (health 0) {cout 游戏结束你死了\n;break;}} else {cout 咔嗒空弹安全\n;}}}else if (choice 2) { // 使用道具cout \n选择道具:\n;int i 1;vectorItem availableItems;for (auto item : inventory) {if (item.second 0) {cout i . ITEM_NAMES.at(item.first) ( item.second 个)\n;availableItems.push_back(item.first);i;}}cout i . 取消\n ;int itemChoice;cin itemChoice;if (itemChoice 1 || itemChoice availableItems.size() 1) {cout 无效选择\n;continue;}if (itemChoice availableItems.size() 1) {cout 取消道具使用\n;continue;}Item selected availableItems[itemChoice - 1];inventory[selected]--;switch (selected) {case CANDY:health min(health 1, 3);cout 使用棒棒糖生命值恢复至 health endl;break;case CONVERTER:if (!bullets.empty()) {bullets.front() !bullets.front();cout 使用转换器下一发子弹已转换为 (bullets.front() ? 实弹 : 空弹) endl;} else {cout 没有子弹可转换\n;}break;case HANDCUFF:skipCount;cout 使用手铐获得一次跳过机会\n;break;case DRINK:if (bullets.size() 1) {// 将队列转为vector洗牌vectorbool temp;while (!bullets.empty()) {temp.push_back(bullets.front());bullets.pop();}shuffle(temp.begin(), temp.end(), rng);for (bool b : temp) bullets.push(b);cout 使用饮料子弹顺序已重新洗牌\n;} else {cout 子弹不足无法洗牌\n;}break;default:break;}}else if (choice 3) { // 退出cout 游戏结束\n;return 0;}else {cout 无效选择\n;}}// 胜利条件if (health 0) {cout \n 恭喜你成功存活剩余子弹: bullets.size() endl;}return 0;}我运行过之后是没有问题的但是不知道其他c否运行假如有人运行不了你就把错误报告给我我就会我会尽量修复谢谢

相关文章:

C++版俄罗斯赌盘(爽到飞起)

俄罗斯赌盘是一款比较火的网络游戏而今天我用c加加代码复原了他&#xff0c;接下来请大家尽情欣赏源代码:#include <iostream> #include <vector> #include <queue> #include <cstdlib> #include <ctime> #include <algorithm> #include &…...

Linux48:rockx常用的API

rockx人脸检测使用的API rockx框架提供了一系列的人脸识别、检测的API&#xff0c;开发者使用它的API能够快速开发出人脸相关的功能。我们来看看在人脸检测中需要用到的API。 1.1 rockx_create函数的定义 rockx_ret_t rockx_create(rockx_handle_t *handle, rockx_module_t m…...

ChatGPT免费版数学暴涨24%,还藏了个语音大招

5月5号GPT-5.5 Instant上线&#xff0c;5月7号GPT-Realtime-2发布。 两天两发&#xff0c;一文本一语音。 免费用户直接拿到旗舰级智力&#xff0c;这事比跑分本身有意思。 ​ 不是阉割版&#xff0c;是旗舰智力配了极速响应 先说我判断变化的地方。 GPT-5.5 Instant刚发布时…...

四足机器人滑行控制:贝叶斯优化与强化学习协同设计

1. 四足机器人滑行控制的挑战与机遇四足机器人在复杂地形移动方面展现出巨大潜力&#xff0c;但传统行走模式在平滑地面上的速度和能效始终无法与轮式机器人媲美。2018年&#xff0c;苏黎世联邦理工学院的研究团队首次在ANYmal机器人上展示了被动轮滑行技术&#xff0c;相比传统…...

skillspm:AI智能体技能包管理器,实现环境管理的声明式工作流

1. 项目概述&#xff1a;为AI智能体设计的原生技能包管理器如果你正在构建或使用AI智能体&#xff08;比如Claude Code、OpenClaw这类工具&#xff09;&#xff0c;并且发现管理它们的“技能”&#xff08;Skills&#xff09;变得越来越复杂——不同项目需要不同的技能组合&…...

QT下载并安装

一、QT下载 1、从 Qt 5.15.0 开始&#xff0c;开源版本必须用在线安装器&#xff0c;不再提供离线安装包。 2、错误处理&#xff1a;./qt-online-installer-linux-x64-4.11.0.run: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.28 not found (required by ./qt-online-…...

Redis别再只当缓存用!8种常用数据结构+实战选型,一看就会

大家好&#xff0c;我是直奔標竿&#xff01;做开发的朋友应该都有这种体会&#xff1a;学Redis入门&#xff0c;基本上都是从GET/SET开始&#xff0c;简单好记&#xff0c;上手也快。可一到实际项目里就犯难——不管什么数据&#xff0c;都往String里塞&#xff0c;到最后Redi…...

顶俏模式商城系统开发 单层直推积分流转架构解析

顶俏模式为什么能在私域电商里爆火近几年私域电商卷得厉害&#xff0c;各种新模式换着花样出来&#xff0c;能留到现在还被人追捧的&#xff0c;顶俏模式绝对算一个。很多人一开始看不懂&#xff0c;为什么偏偏是单层直推的模式火了&#xff0c;还不是因为之前不少多级分销踩了…...

SKILL推荐实战 - 80%测试覆盖率不是梦,而是标准工作流

❀ springboot-tdd是什么&#xff1f;springboot-tdd 是一个专为 Spring Boot 项目设计的测试驱动开发&#xff08;TDD&#xff09;技能。它提供了一套完整的测试工作流&#xff0c;覆盖从单元测试到集成测试的全链路。核心技术栈&#xff1a;JUnit 5 - 测试框架Mockito - Mock…...

高性能MCP服务器实战:AI应用通信优化与性能调优指南

1. 项目概述&#xff1a;一个为AI应用提速的“高速公路”接口最近在折腾AI应用开发的朋友&#xff0c;估计都绕不开一个词&#xff1a;MCP&#xff08;Model Context Protocol&#xff09;。简单来说&#xff0c;它就像是一个标准化的“插头”&#xff0c;让不同的AI模型&#…...

KES数据库安全、权限、审计实战

KES数据库安全、权限、审计实战这一章专门讲生产上线必过的安全关——等保2.0、三权分立、数据脱敏、操作审计、国密加密、权限最小化。内容全部来自政务/金融/央企真实上线场景&#xff0c;完全贴合KES官方安全规范&#xff0c;学完就能直接过等保、过检查、上线不踩坑。一、&…...

AI应用开发实战:基于Awesome清单构建生产级LLM客户端

1. 项目概述&#xff1a;一个AI客户端的“Awesome”清单意味着什么&#xff1f;最近在GitHub上闲逛&#xff0c;又发现了一个让我眼前一亮的项目&#xff1a;wlemuel/awesome-ai-client。光看这个标题&#xff0c;任何一个在AI应用开发领域摸爬滚打过一段时间的开发者&#xff…...

Captain AI:深度市场洞察,助力OZON商家精准把握商机

在瞬息万变的俄罗斯OZON电商市场&#xff0c;谁能率先发现市场趋势、洞察用户需求&#xff0c;谁就能在竞争中占据主动。然而&#xff0c;面对海量的市场数据和复杂的消费行为&#xff0c;传统的人工分析方式往往难以奏效。一、OZON市场分析的核心难点1. 市场趋势难以预判俄罗斯…...

使用Taotoken后模型API调用的延迟与稳定性体感观察

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用Taotoken后模型API调用的延迟与稳定性体感观察 在近期的虚拟机开发测试项目中&#xff0c;我们通过Taotoken平台统一接入了多个…...

浏览器资源嗅探技术:从碎片化视频流到完整内容获取的解决方案

浏览器资源嗅探技术&#xff1a;从碎片化视频流到完整内容获取的解决方案 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 当你在观看在线课程时突然…...

XNBCLI:3步搞定星露谷物语XNB文件解包打包的完整指南

XNBCLI&#xff1a;3步搞定星露谷物语XNB文件解包打包的完整指南 【免费下载链接】xnbcli A CLI tool for XNB packing/unpacking purpose built for Stardew Valley. 项目地址: https://gitcode.com/gh_mirrors/xn/xnbcli 想要修改星露谷物语中的游戏资源吗&#xff1f…...

告别布线困扰 ,TurMass Mesh 无线组网方案让农业物联网部署简单高效

农业是立国之本&#xff0c;畜牧业是农业经济的重要支柱。在数字农业和智慧畜牧的时代浪潮中&#xff0c;如何实现农业生产环境的全面感知、精准管控和科学决策&#xff0c;成为摆在广大农业从业者面前的重要课题。从大型温室大棚到广袤农田&#xff0c;从标准化养殖场到分散的…...

.NET Web API数据库游标性能优化与最佳实践指南

1. 项目概述与核心价值最近在重构一个遗留的.NET Web API项目时&#xff0c;遇到了一个让我头疼的问题&#xff1a;数据库查询性能在特定场景下急剧下降。经过层层排查&#xff0c;最终定位到罪魁祸首是几个写得不太规范的游标&#xff08;Cursor&#xff09;操作。这让我意识到…...

从“石头剪刀布”到商业竞争:用Python实战模拟完全信息静态博弈(附代码)

从“石头剪刀布”到商业竞争&#xff1a;用Python实战模拟完全信息静态博弈 博弈论常被视为经济学中的"数学武器库"&#xff0c;但它的魅力远不止于学术论文。当我们在电商平台比价时&#xff0c;当两家外卖App同时发放优惠券时&#xff0c;甚至当你在会议室与同事讨…...

别再死记硬背了!用一张图+实战代码,带你吃透USB PD协议里的24种控制消息

图解USB PD协议&#xff1a;24种控制消息的实战解码手册 在嵌入式开发领域&#xff0c;USB Power Delivery&#xff08;PD&#xff09;协议堪称电源管理的"瑞士军刀"&#xff0c;但协议文档中晦涩的状态机和抽象术语常常让开发者陷入"每个字都认识&#xff0c;连…...

深入解析系统级光标定制:从原理到实践打造个性化交互体验

1. 项目概述&#xff1a;从“换个鼠标指针”到打造个性化交互体验 “换个鼠标指针”听起来像是个微不足道的小把戏&#xff0c;对吧&#xff1f;我最初也是这么想的。但当我真正开始深入使用和定制 ashutoshbhole1/custom_cursor 这个项目时&#xff0c;我才意识到&#xff0…...

泰山派3M-RK3576-Linux内核驱动教程-Linux驱动基础-字符驱动设备-应用程序访问字符设备

06.应用程序访问字符设备 在上一个章节中&#xff0c;我们编写了一个驱动程序&#xff0c;这里我们要编写一个APP应用程序&#xff0c;实现在应用层调用驱动底层的 open 和 write 函数。 一、APP和驱动程序的区别与分工 1. 驱动程序&#xff08;Driver&#xff09; 工作在内核空…...

SPI 在 以太网 PHY、CAN 控制器 中的通信应用(原理 + 场景 + 接线 + 时序全覆盖)

一、核心总览SPI 在这两类器件里不是做业务数据总线&#xff0c;核心作用是&#xff1a;MCU 通过 SPI 对 PHY / CAN 控制器 做&#xff1a;配置初始化、寄存器读写、状态读取、故障诊断以太网 PHY&#xff1a;SPI 管理 PHY 寄存器、速率 / 双工、链路状态CAN 控制器&#xff08…...

泰山派3M-RK3576-Linux内核驱动教程-Linux驱动基础-字符驱动设备-实现一个字符设备

接下来我们自己来实现一个字符设备&#xff0c;进行一个实操演示。 一、字符设备驱动的基本结构 驱动程序主要包括以下几个关键部分&#xff1a; 注册设备号和 cdev实现 file_operations 结构体&#xff08;包含 read/write 等操作&#xff09;创建设备类和设备节点资源释放和模…...

运维养龙虾--MongoDB 官方 Agent Skills 深度解析:为编码智能体注入专家级最佳实践

前言 软件工程正在经历一场深刻的变革。智能体工程&#xff08;Agent Engineering&#xff09; 时代已经到来。 根据 Stack Overflow 2025 年开发者调查显示&#xff1a; 84% 的受访者已在开发中使用或计划使用 AI 工具这一比例高于 2024 年的 76% 在这个背景下&#xff0c…...

泰山派3M-RK3576-Linux内核驱动教程-Linux驱动基础-字符驱动设备-字符设备框架

03.字符设备框架 一、什么是字符设备&#xff1f; 字符设备&#xff08;Character Device&#xff09;是一类能像“一个字节一个字节”那样进行数据流式读写的设备&#xff0c;常见例子有串口、键盘、鼠标等。用户和程序通过文件操作&#xff08;open、read、write、close 等&a…...

泰山派3M-RK3576-系统功能-Android14-mSATA硬盘使用

Android14系统mSATA使用 说明 mSATA 是一种小型化的 SATA 接口&#xff0c;常用于笔记本电脑和嵌入式设备中。泰山派3m开发板上集成了MINI-PCIe接口&#xff0c;MINI-PCIe 和 mSATA 物理接口兼容&#xff0c;可以方便地连接 mSATA 固态硬盘&#xff0c;以扩展存储容量和提升数…...

Ruler:统一管理AI编程助手指令,提升团队协作与代码质量

1. 项目概述&#xff1a;为什么你需要一个AI助手指令的“中央集权”系统&#xff1f;如果你和我一样&#xff0c;每天要和GitHub Copilot、Cursor、Claude Code、Aider等好几个AI编程助手打交道&#xff0c;那你一定遇到过这种烦恼&#xff1a;每个工具都有自己的配置文件&…...

【2026实测】论文AI率居高不下?3大高阶指令+4款工具快速通关指南

撰写文章的那段日子&#xff0c;我之前也像无头苍蝇一样试过不少免费降ai率工具。结果往往是耗费了大量时间和精力&#xff0c;却没有看到明显降低ai率的效果&#xff0c;有时反而打乱了原本顺畅的逻辑&#xff0c;甚至改得前言不搭后语。 其实&#xff0c;只要掌握对的方法和…...

一个 C++ 程序从磁盘到内存要经历多少次变形?——从 ELF section 到 segment,拆解 execve 加载器的 6 步地址空间构建

在你的终端里敲下 readelf -S a.out,屏幕会吐出将近 30 行——.text、.rodata、.data、.bss、.symtab、.strtab、.rela.dyn、.rela.plt、.init_array、.fini_array……一个看似简单的 C++ 程序,编译器和链接器在它体内塞了三十个形状各异的"隔间",每个隔间有自己的…...