C编程题生态系统Word文档格式.docx
- 文档编号:21988632
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:13
- 大小:199KB
C编程题生态系统Word文档格式.docx
《C编程题生态系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《C编程题生态系统Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
042
华南师范大学教务处
一、?
题目
1、实验内容:
设计和开发一个简单的生态系统仿真软件
2、实验要求:
按照综合设计实验的格式要求撰写本实验的实验报告;
代码规范、注释简洁清晰;
独立完成代码的编写和调试以及实验报告的撰写;
二、中文摘要
在代码的基础上进行完善或者重写,修改完善各类生物物种的现有规则;
尝试着添加新的物种,并定义相应的规则;
通过不断的重构来完善系统的设计和实现,在改进中体会如何权衡各种因素,通过合理有效的面向对象设计和实现,带来代码复用、隔离变化、增加扩展性等方面的好处。
通过本次综合开发,加深对面向对象概念的理解,提高软件设计和开发能力,培养自学能力和刻苦钻研的精神,增强独立思考的习惯和勇于创新的魄力。
三、关键词
生态系统、仿真模型、物种、生存规则、代码复用
四、前言
在了解供参考的仿真模型后,阅读供参考的代码,然后在代码的基础上进行完善或者重写,通过不断的重构来完善系统的设计和实现,在改进中体会如何权衡各种因素,通过合理有效的面向对象设计和实现,带来代码复用、隔离变化、增加扩展性等方面的好处。
仿真模型和代码结构提倡按照自己的理解和能力进行自由发挥,使得仿真模型更合理、显示方式更直观、配置更方便、扩展更容易、可维护性更好。
五、软件的开发过程
1、添加物种:
狼
(1)添加cpp文件,狮子的更新以及生存条件:
#include"
"
StateLionUnit:
:
getState()
{
returnLION;
}
nextState()
age++;
round();
if(sum[LION]>
TMLION)
{
returnEMPTY;
}
else
if(age>
DLION)
{
returnEMPTY;
}
else
returnLION;
}
voidLionUnit:
round()
world->
sums(pos,sum);
(2)添加头文件:
//
classLionUnit:
publicLivingUnit
public:
LionUnit(World*w,intr,intc,inta=0):
age(a)
=r;
=c;
world=w;
StategetState();
StatenextState();
voidround();
protected:
intage;
};
(3)狮子的世界类型:
voidWorld:
worldOfLion()
srand(unsigned(time(0)));
for(inti=2;
i<
N-2;
++i)
for(intj=2;
j<
++j)
intrandom1=1+(5-1)*rand()/(RAND_MAX+;
switch(random1)
{
case1:
(*curMap)[i][j]=LION;
break;
case2:
(*curMap)[i][j]=FOX;
case3:
(*curMap)[i][j]=RABBIT;
default:
(*curMap)[i][j]=GRASS;
}
}
(4)枚举类型中添加const成员
(5)对狮子的输出控制
2、对其它物种的生存条件的修改
草:
StateGrassUnit:
nextState()
if(sum[GRASS]>
sum[RABBIT]||sum[EMPTY]>
0)
returnGRASS;
兔子:
StateRabbitUnit:
if(sum[FOX]>
sum[RABBIT]||sum[LION]>
sum[RABBIT]||sum[FOX]+sum[LION]>
sum[RABBIT])
}
else
if(++age>
DRAB)
{returnEMPTY;
}
{
returnRABBIT;
狐狸:
StateFoxUnit:
if(sum[LION]>
sum[FOX])
{returnEMPTY;
TMFOX)
DFOX)
returnFOX;
3、其它世界的布局
worldOfGrass()
intrandom1=1+(11-1)*rand()/(RAND_MAX+;
case4:
case5:
case6:
}
4、对主函数的修改
//一个简单的生态仿真系统
#include<
iostream>
usingnamespacestd;
intmain()
intwo;
cout<
<
(1:
WORLD_OF_GRASS,2:
WORLD_OF_RABBIT,3:
WORLD_OF_FOX,4:
WORLD_OF_LION)"
endl<
请输入世界的编号:
;
cin>
>
wo;
switch(wo)
case1:
wo=WORLD_OF_GRASS;
case2:
wo=WORLD_OF_RABBIT;
case3:
wo=WORLD_OF_FOX;
default:
wo=WORLD_OF_LION;
Worldworld(wo);
Scenescene(world);
();
return1;
}六、系统测试情况
七、?
系统的优点与不足
优点:
能模拟不同类型世界的演变过程,且不会造成生态系统的崩溃。
可以选择不同的世界,随用户自由选择。
物种的生成可随机分配。
缺点:
模拟不同的世界类型不够仿真,动物无法自然老死。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 生态系统