猜数字游戏代码

#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <ctime>
using namespace std;
//清屏
void ClearScreen()
{
	system("cls");
}
//显示菜单
void ViewMenu()
{
	cout<<"******************"<<endl;
	cout<<"1.玩家自定数字"<<endl;
	cout<<"2.系统随机数字"<<endl;
	cout<<"3.规则"<<endl;
	cout<<"4.退出游戏"<<endl;
	cout<<"******************"<<endl;

}
//显示规则
void ViewRule()
{
	cout<<"***********************************************"<<endl;
	cout<<"本游戏分为玩家自定谜底和系统定义谜底"<<endl;
	cout<<"玩家进行猜数字游戏,输入要猜的数字"<<endl;
	cout<<"谜底是四位互不相同的0-9数字组成"<<endl;
	cout<<"A提示的是其中一位与谜底对应位是相同的"<<endl;
	cout<<"B提示的是其中一位数字与谜底中的一位相同但不对应"<<endl;
	cout<<"4A0B表示所猜数字与谜底相同"<<endl;
	cout<<"***********************************************"<<endl;

}
//是否有相等位
bool CheckNum(int a[])
{
	if(a[0] != a[1] && a[2] != a[3] && a[0]!= a[3] && a[0] != a[2] && a[1] != a[3] && a[1] !=a[2])
		return true;
	else
		return false;
}
//暂停一下
void HoldOn()
{
	system("pause");
}
//游戏主程序
void NumberGame()
{
	char n;//命令选择
	int a=0,b=0;//回馈参数
	int GasNumber[4];//要猜的数字

	while(1)
	{
		ViewMenu();
		n=getch();
	    ClearScreen();
		switch(n)
		{
		case ‘1‘://玩家输入数字
			{
				//输入->检测->分解->相同则返回继续输入
				cout<<"清输入要猜的四位数字"<<endl;
				int temp;
				cin>>temp;
			loop:
				while(temp<=999 || temp >= 10000 && !cin.fail())
				{
					cout<<"输入错误,清重新输入四位数字!"<<endl;
					cin.clear();
					cin.sync();
					cin>>temp;
				}
				for(int i=1;i<=4;i++)
				{
					GasNumber[4-i]=temp%10;
					temp=temp/10;
				}
				if(!CheckNum(GasNumber))
					goto loop;

				a=b=0;//重置
				cin.clear();
				cin.sync();
				ClearScreen();
				cout<<"请输入要猜的数字!"<<endl;
				int Gas;
				cin>>Gas;
				while(1)
				{
					if(cin.fail())
					{
						cout<<"输入错误,清重新输入"<<endl;

					}
					else //计算a,b的值
					{

						int de[4];
						for(int i=1;i<=4;i++)
						{
							de[4-i]=Gas%10;
							Gas=Gas/10;
						}
						for(int i=0;i<4;i++)
						{
							for(int j=0;j<4;j++)
							{
								if(GasNumber[i]==de[j])
									if(i==j)
										a++;
									else
										b++;

							}

						}

					}
					if(a==4)
					{
						cout<<"所猜数字回馈:"<<a<<"A"<<b<<"B"<<endl;
						cout<<"猜数字结束"<<endl;
						HoldOn();
						ClearScreen();
						break;
					}
					else
						cout<<"所猜数字回馈:"<<a<<"A"<<b<<"B"<<endl;
					a=b=0;//重置
					cout<<"请输入要猜的数字!"<<endl;
					cin.clear();
					cin.sync();
					cin>>Gas;

				}

				break;
			}
		case ‘2‘://系统自定义
			{
				srand(time(0));
				while(1)
				{
					GasNumber[0]=rand()%10;
					GasNumber[1]=rand()%10;
					GasNumber[2]=rand()%10;
					GasNumber[3]=rand()%10;
					if(CheckNum(GasNumber))
						break;
				}
				a=b=0;//重置
				cin.clear();
				cin.sync();
				ClearScreen();
				cout<<"请输入要猜的数字!"<<endl;
				int Gas;
				cin>>Gas;
				while(1)
				{
					if(cin.fail())
					{
						cout<<"输入错误,清重新输入"<<endl;

					}
					else //计算a,b的值
					{

						int de[4];
						for(int i=1;i<=4;i++)
						{
							de[4-i]=Gas%10;
							Gas=Gas/10;
						}
						for(int i=0;i<4;i++)
						{
							for(int j=0;j<4;j++)
							{
								if(GasNumber[i]==de[j])
									if(i==j)
										a++;
									else
										b++;

							}

						}

					}
					if(a==4)
					{
						cout<<"所猜数字回馈:"<<a<<"A"<<b<<"B"<<endl;
						cout<<"猜数字结束"<<endl;
						HoldOn();
						ClearScreen();
						break;
					}
					else
						cout<<"所猜数字回馈:"<<a<<"A"<<b<<"B"<<endl;
					a=b=0;//重置
					cout<<"请输入要猜的数字!"<<endl;
					cin.clear();
					cin.sync();
					cin>>Gas;

				}
				break;
			}
		case ‘3‘://显示规则
			{
				ViewRule();
				HoldOn();
				ClearScreen();
				break;
			}
		case ‘4‘: //退出程序
			{
				cout<<"欢迎使用本程序"<<endl;
				exit(0) ;
			}

		}

	}

}
int main()
{
	NumberGame();

	return 0;
}

  

时间: 2024-10-11 05:28:54

猜数字游戏代码的相关文章

python3.3使用tkinter实现猜数字游戏代码

发布时间:2014-06-18   编辑:www.jbxue.com 原文地址:http://www.jbxue.com/article/python/22152.html python3.3使用tkinter开发猜数字游戏的例子,python3.3中tkinter的使用方法. 本节脚本小编分享一例ython3.3中tkinter开发猜数字小游戏的代码. 例子,python3.3中tkinter实例. 复制代码代码示例: # -*- coding: utf-8 -*-import tkinter

通过游戏学python 3.6 第一季 第三章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释 可复制直接使用 娱乐 可封装 函数

1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释 2 3 import random 4 number = random.randint(1,99)#设定答案(可以假设成年龄吧) 5 amount = random.randint(3,8) #设定猜测次数 6 print('本次游戏次数为',amount,'次') 7 8 count = 0 #设定初始次数 9 while count <= amount: #条件成立无限循环 10 try: 11 guess

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能&#39;menufile

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile 1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号--锁定次数--菜单功能'menufile' 2 #!usr/bin/env python 3 #-*-c

通过游戏学python 3.6 第一季 第四章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码 可复制直接使用 娱乐 可封装 函数

1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码 2 3 import random 4 secrst = random.randint(1,99) 5 6 number = secrst 7 8 amount = random.randint(3,8) 9 print('本次游戏次数为',amount,'次') 10 11 count=0 12 while count<=amount: 13 try: 14 conversion=input('请猜数字') 15 guess=in

通过游戏学python 3.6 第一季 第七章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号

#猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号 1 #猜数字--核心代码--猜测次数--随机函数和屏蔽错误代码---优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账号 2 #!usr/bin/env python 3 #-*-coding:utf-8-*- 4 #QQ124111294 5 6 7 import random 8 number = random.rand

JavaScript一个猜数字游戏

效果图: 代码: <body> <script type="text/javascript"> window.onload = newgame; //页面载入的时候就开始一个新的游戏 window.onpopstate = popState; //处理历史记录相关事件 var state,ui; //全局变量,在newgame()方法中会对其初始化 function newgame( playagin ){ //开始一个新的猜数字游戏 //初始化一个包含需要的文

原创Android游戏--猜数字游戏V1.1 --数据存储,Intent,SimpleAdapter的学习与应用

--------------------------------------------------------------- V0.1版本 上次做完第一个版本后,发现还有一些漏洞,并且还有一些可以添加的功能,以及一些可改进的地方,于是准备继续完善此游戏,顺便学Android了. 本次更新信息如下: 1.改正了随机数生成算法,更正了不能产生数字'9'的bug 2.增加了数据存储与IO的内容,使用了SharedPreferences保存数据 3.保存数据为: 总盘数,猜中的盘数 4.使用了Simp

猜数字游戏

功能:产生一个随机数,猜随机数的大小,机会只有3次,并且如果猜错了,焦点自动返回.使用到的接口:ActionListener FocusListener; 代码: package com.niit.guessgame; import java.awt.Color; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.

LeetCode:Bulls and Cows - 猜数字游戏

1.题目名称 Bulls and Cows(猜数字游戏) 2.题目地址 https://leetcode.com/problems/bulls-and-cows/ 3.题目内容 英文:You are playing the following Bulls and Cows game with your friend: You write a 4-digit secret number and ask your friend to guess it, each time your friend g