欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > 抢十八游戏

抢十八游戏

2025/2/5 15:47:25 来源:https://blog.csdn.net/NOIP1ding_c/article/details/145146583  浏览:    关键词:抢十八游戏

前言

我国民国一直流传着一个名叫“抢十八”的抢数游戏:参与游戏的两人从1开始轮流报数,每次至少报1个数,最多报2个数,每人报的每个数不得与自已报过的或对方报过的重复,也不得跳过任何一个数。谁先报到18,谁就获胜。

玩法策略

在“抢十八”游戏中,取胜的关键在于每次报数时抢到关键数3、6、9、12、15、18‌。具体策略如下:

  1. 关键数策略‌:在“抢十八”游戏中,关键数包括3、6、9、12、15、18。玩家需要确保在每次报数时抢到这些关键数,从而控制游戏的进程。例如,要抢到18,之前必须抢到15,只留给对方3个数;同理,要抢到15,之前必须抢到12,以此类推‌12。

  2. 倒推法‌:通过倒推法可以找到这些关键数。最后要抢到18,之前必须抢到15,再之前必须抢到12,以此类推,直到3。这样,玩家可以确保在每一步都抢到关键数,直到最后抢到18‌23。

  3. 后报数者的优势‌:由于报数顺序决定了最后的结果,后报数者有必胜策略。后报数者每次都需要抢到这些关键数,直到最后抢到18‌23。

通过以上策略,玩家可以在“抢十八”游戏中取得胜利。

思路

此代码是游戏,并无思路。

代码解决

/*头文件部分*/
#include <iostream>
#include <windows.h>
#include <random>
/*定义变量部分*/
using namespace std;
long long number_off, count, target;
long long Number_of_player_victories = 0, Number_of_computer_victories = 0;
/*玩家报数函数部分*/
static void Player_reports() {number_off = 0;while (number_off <= 0) {cout << "当前" << number_off << ",请报增量:";cin >> number_off;if (number_off < 1 || number_off > 2) {cout << "请重新报数";number_off = 0;system("pause");system("cls");}else if (number_off + ::count > target) {cout << "请重新报数";number_off = 0;system("pause");system("cls");}}::count += number_off;cout << "玩家报数:" << ::count;system("pause");system("cls");
}
/*计算机报数函数部分*/
static void Computer_reporting() {if ((target - ::count) % 3 == 2)number_off = 2;elsenumber_off = 1;::count += number_off;cout << "计算机报数:" << ::count;system("pause");system("cls");
}
/*主函数部分*/
int main() {target = 18; //这里可以修改::count = 0;cout << "游戏开始..." << endl;system("pause");system("cls");std::random_device rd;std::mt19937 gen(rd());std::uniform_int_distribution<> distrib(1, 2);int random_number = distrib(gen);if (1 == random_number)Computer_reporting();while (::count != target) {Player_reports();if (::count == target)cout << "你赢了一局!" << endl;else {Computer_reporting();if (::count == target)cout << "计算机赢了一局!" << endl;}}return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com