一个简单猜数字游戏的实现(二)
2012-03-25 16:35
239 查看
一个简单的猜数字游戏设计与实现(2)
前言:
敏捷编程的设计思想是:先让它跑起来,然后在其内添加功能;
在前一篇文章中简单实现了猜测判断和流程控制,但只能对一种Fabonacci数列进行猜测,掌握规律后未免单调,故希望游戏扩展如下功能:
有六种数列:Fibonacci,Lucas,Pell,Triangular,Square,Pentagonal;
每种数列的数字排列有不同的规律,随机出现其中的一种数列的前两个数字;
用户猜测第三个数字;
1.设计思想:
用六个vector<int>分别存放6种数列的连续三个数字,用一个指针数组存储指向六个vector的指针,随机产生一个数组下标,从而可以随机的指向某一种数列,从而实现随机的对某一种数列进行预测;
数列种类:
const int seq_cnt=6;
数列种类定义成常量,方便以后的扩展;
数据结构:
六种数列:
vector<int> Fibonacci;
vector<int> Lucas;
vector<int> Pell;
vector<int> Triangular;
vector<int> Square;
vector<int> Pentagonal;
指针数组:
vector<int> *seq_addrs[seq_cnt];
工作指针:
vector<int> *pv;
随机索引下标的获取:
int seq_index=0;
srand(time(Null));
seq_index=rand()%seq_cnt;
2.实现
见上传的文件: 猜数字游戏(2).rar
3.总结:
在有关vector编程中,结合使用vector和vector指针数组,通过vector指针对某个特定的vector进行操作,是一个非常常见的编程技巧;
将各零散的不相关的数据整合到一个数组中,可以使用循环等结果对数据的顺序处理,vector类型通常将其指针整合到一个数组中,使用指针数组实现对若干个零散的vector的统一操作;
编程小技巧:
有关指针的初始化和使用:
初始化为0值;
使用时检测以防止对null指针进行提领操作
int *pi=0;
...
if(pi&&...)
...
前言:
敏捷编程的设计思想是:先让它跑起来,然后在其内添加功能;
在前一篇文章中简单实现了猜测判断和流程控制,但只能对一种Fabonacci数列进行猜测,掌握规律后未免单调,故希望游戏扩展如下功能:
有六种数列:Fibonacci,Lucas,Pell,Triangular,Square,Pentagonal;
每种数列的数字排列有不同的规律,随机出现其中的一种数列的前两个数字;
用户猜测第三个数字;
1.设计思想:
用六个vector<int>分别存放6种数列的连续三个数字,用一个指针数组存储指向六个vector的指针,随机产生一个数组下标,从而可以随机的指向某一种数列,从而实现随机的对某一种数列进行预测;
数列种类:
const int seq_cnt=6;
数列种类定义成常量,方便以后的扩展;
数据结构:
六种数列:
vector<int> Fibonacci;
vector<int> Lucas;
vector<int> Pell;
vector<int> Triangular;
vector<int> Square;
vector<int> Pentagonal;
指针数组:
vector<int> *seq_addrs[seq_cnt];
工作指针:
vector<int> *pv;
随机索引下标的获取:
int seq_index=0;
srand(time(Null));
seq_index=rand()%seq_cnt;
2.实现
见上传的文件: 猜数字游戏(2).rar
3.总结:
在有关vector编程中,结合使用vector和vector指针数组,通过vector指针对某个特定的vector进行操作,是一个非常常见的编程技巧;
将各零散的不相关的数据整合到一个数组中,可以使用循环等结果对数据的顺序处理,vector类型通常将其指针整合到一个数组中,使用指针数组实现对若干个零散的vector的统一操作;
编程小技巧:
有关指针的初始化和使用:
初始化为0值;
使用时检测以防止对null指针进行提领操作
int *pi=0;
...
if(pi&&...)
...
相关文章推荐
- 一个简单猜数字游戏的实现(一)
- 【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!
- JavaScript实现一个简单的贪吃蛇游戏
- 文曲星猜数游戏的一个简单实现
- 猜数字游戏。编写一个Java应用程序,实现功能:
- 一个简单的三子棋游戏(c语言实现)
- 一个简单的算法---实现找出数组中一个数字出现次数最多的数字
- 一个简单的算法---实现找出数组中一个数字出现次数最多的数字
- go实现一个简单的游戏服务器框架(lotou)基本设计
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- 16—【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能
- 一个简单的算法---实现找出数组中一个数字出现次数最多的数字
- 简单的实现一个类似于Cocos2dx的游戏框架——导演、场景、层、精灵(已填坑5%)
- 【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!
- 利用jsp/servlet/Ajax,实现一个猜数字游戏!
- 写一个简单猜数字游戏的小程序
- cocos2d-x入门(2)-实现一个简单的游戏SimpleGame
- 【Android2D游戏开发十六】(上文之触摸屏手势)详解Android Gesture 手势操作!利用手势实现一个简单切换图片的功能!
- 【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!
- 【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!