落落后生 落落后生
关注数: 16 粉丝数: 61 发帖数: 747 关注贴吧数: 22
自己做了个生命细胞游戏的c++,大家看看 #include"iostream.h" int main() { Chessboard chessboard ; int k=1; chessboard=chessboard.iniboard(chessboard); cout<<"下面给出一个15*15的棋盘:"<<endl; count<<"棋子空格表示细胞死,*表示细胞活"<<endl; chessboard.print(chessboard); while(k==1) { cout<<"请选择:"<<endl; cot<<"1:进行变化"<<endl; cout<<"2:退出"<<endl; cin>>k; if(k==2) { break ; } chessboard=chessboard.changestate(chessboard); //对棋盘上的细胞生死进行变换 cout<<"现在输出变换后的状态"<<endl; chessboard.print(chessboard); //输出变化后的细胞状态 }; } #include"chessboard.h" #include"iostream.h" #include"time.h" #include"stdlib.h" //**********计算摸个细胞周围活的细胞的个数*********** int Chessboard::livngnum(int i,int j,Chessboard chessboard) { int livingnum=0; if((i>=1)&(j>=1)&(i<=13)&(j<=13)) livingnum=chessboard.value[i-1][j-1]+chessboard.value[i-1][j] +chessboard.value[i-1][j+1]+chessboard.value[i][j-1] +chessboard.value[i][j+1]+chessboard.value[i+1][j-1] +chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; if((i==0)&(j==0)) { livingum=chessboard.vale[i][j+1]+chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; } if((i==0)&(j==14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i+1][j-1]+chessboard.value[i+1][j]; } if((i==14)&(j==0)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i-1][j+1]+chessboard.value[i-1][j+1]; } if((i==14)&(j==14)) { livingnum=chessboard.value[i-1][j-1]+chessboard.value[i-1][j]+chessboard.value[i][j-1]; } if((i==0)&(j>0)&(j<14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i][j+1]+chessboard.value[i+1][j-1]+ chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; } if((i==14)&(j>0)&(j<14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i][j+1]+chessboard.value[i-1][j-1]+ chessboard.value[i-1][j]+chessboard.value[i-1][j+1]; } if((j==0)&(i>0)&(i<14)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i+1][j]+chessboard.value[i-1][j+1]+ chessboard.value[i][j+1]+chessboard.value[i+1][j+1]; } if((j==14)&(i>0)&(i<14)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i+1][j]+chessboard.value[i-1][j-1]+ chessboard.value[i][j-1]+chessboard.value[i+1][j-1]; } return livingnum; } void Chessboard::print(Chessboard chessboard) { cout<<"--------------------------------------"<<endl; for(int j=0;j<=14;j++) { cout<<"|"; for(int j=0;j<=14;j++) { cout<<chessboard.state[i][j]<<""; } cout<<"|"; cout<<endl; } cout<<"-------------------------------------------"<<endl; } Chessboard Chessboard::iniboard(Chessboard chessboard) { srand((unsigned)time(NULL)); //初始化棋盘,每个棋盘位的细胞随机生死 for(int i=0;i<=14;i++) { for(int j=0;j<=14;j++) { chessboard.value[i][j]=rand()%2; if(chessboard.value[i][j]==1) { chessboard.state[i][j]='*'; } else { chessboard.state[i][j]''; } } } return chessboard; } //*********依据规则改变棋盘上棋子的状态****************** Chessboard Chessboard::changestate(Chessboard chessboard) { for(int i=0;i<=14;i++) { for(int j=0;j<=14;j++) { switch(chessboard.livingnum(i,j,chessboard)) { case 3: chessboard.value[i][j]=1; chessboard.state[i][j]='*'; break; case 2: chessboard.value[i][j]=chessboard.value[i][j]; break; default: chessboard.value[i][j]=0 chessboard.state[i][j]=''; } } } return chessboard; } #ifndef Chessboard_h_h #define Chessboard_h_h class Chessboard { public: char state[15][15]; int value[15][15]; int livngnum(int i,int j,Chessboard chessboard); void print (Chessboard chessboard); Chessboard iniboard(Chessboard chessboard); Chessboard changestate(Chesboard chesboard); }; #endif
求大神帮助!生命游戏程序哪里错了 #include"iostream.h" #include"chessboard.h" void main() { Chessboard chessboard ; int k=1; chessboard=chessboard.iniboard(chessboard); cout<<"下面给出一个15*15的棋盘:"<<endl; count<<"棋子空格表示细胞死,*表示细胞活"<<endl; chessboard.print(chessboard); while(k==1) { cout<<"请选择:"<<endl; cot<<"1:进行变化"<<endl; cout<<"2:退出"<<endl; cin>>k; if(k==2) { break ; } chessboard=chessboard.changestate(chessboard); //对棋盘上的细胞生死进行变换 cout<<"现在输出变换后的状态"<<endl; chessboard.print(chessboard); //输出变化后的细胞状态 }; } #include"chessboard.h" #include"iostream.h" #include"time.h" #include"stdlib.h" //**********计算摸个细胞周围活的细胞的个数***********8 int Chessboard::livngnum(int i,int j,Chessboard chessboard) { int livingnum=0; if((i>=1)&(j>=1)&(i<=13)&(j<=13)) livingnum=chessboard.value[i-1][j-1]+chessboard.value[i-1][j] +chessboard.value[i-1][j+1]+chessboard.value[i][j-1] +chessboard.value[i][j+1]+chessboard.value[i+1][j-1] +chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; if((i==0)&(j==0)) { livingum=chessboard.vale[i][j+1]+chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; } if((i==0)&(j==14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i+1][j-1]+chessboard.value[i+1][j]; } if((i==14)&(j==0)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i-1][j+1]+chessboard.value[i-1][j+1]; } if((i==14)&(j==14)) { livingnum=chessboard.value[i-1][j-1]+chessboard.value[i-1][j]+chessboard.value[i][j-1]; } if((i==0)&(j>0)&(j<14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i][j+1]+chessboard.value[i+1][j-1]+ chessboard.value[i+1][j]+chessboard.value[i+1][j+1]; } if((i==14)&(j>0)&(j<14)) { livingnum=chessboard.value[i][j-1]+chessboard.value[i][j+1]+chessboard.value[i-1][j-1]+ chessboard.value[i-1][j]+chessboard.value[i-1][j+1]; } if((j==0)&(i>0)&(i<14)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i+1][j]+chessboard.value[i-1][j+1]+ chessboard.value[i][j+1]+chessboard.value[i+1][j+1]; } if((j==14)&(i>0)&(i<14)) { livingnum=chessboard.value[i-1][j]+chessboard.value[i+1][j]+chessboard.value[i-1][j-1]+ chessboard.value[i][j-1]+chessboard.value[i+1][j-1]; } return livingnum; } void Chessboard::print(Chessboard chessboard) { cout<<"--------------------------------------"<<endl; for(int j=0;j<=14;j++) { cout<<"|"; for(int j=0;j<=14;j++) { cout<<chessboard.state[i][j]<<""; } cout<<"|"; cout<<endl; } cout<<"-------------------------------------------"<<endl; } Chessboard Chessboard::iniboard(Chessboard chessboard) { srand((unsigned)time(NULL)); //初始化棋盘,每个棋盘位的细胞随机生死 for(int i=0;i<=14;i++) { for(int j=0;j<=14;j++) { chessboard.value[i][j]=rand()%2; if(chessboard.value[i][j]==1) { chessboard.state[i][j]='*'; } else { chessboard.state[i][j]''; } } } return chessboard; } //*********依据规则改变棋盘上棋子的状态****************** Chessboard Chessboard::changestate(Chessboard chessboard) { for(int i=0;i<=14;i++) { for(int j=0;j<=14;j++) { switch(chessboard.livingnum(i,j,chessboard)) { case 3: chessboard.value[i][j]=1; chessboard.state[i][j]='*'; break; case 2: chessboard.value[i][j]=chessboard.value[i][j]; break; default: chessboard.value[i][j]=0 chessboard.state[i][j]=''; } } } return chessboard; } #ifndef Chessboard_h_h #define Chessboard_h_h class Chessboard { public: char state[15][15]; int value[15][15]; int livngnum(int i,int j,Chessboard chessboard); void print (Chessboard chessboard); Chessboard iniboard(Chessboard chessboard); Chessboard changestate(Chesboard chesboard); }; #endif
转专业,,,,,,不是吧 转专业有2个办法: 第一种方法: 就是要求班级学习成绩前3-5名的允许转。个人申请---学院同意并推荐---拟转入专业的学院审核(个别的要面试)---学校领导签字--教务部备案--正式转入。此方式存在走后门隐患。 第二种方法:考试 1、学生转专业每学年集中审批一次,申请时间在每学年第二学期的最后两周。 2、教务处于每学年第二学期末,根据转入专业的办学条件,分文、理科向全校公布转入专业的接受名额。 3、为维护正常的教学秩序,原则上参加选拔后各专业转出人数一般不得超过所在专业当年招生数的3-5%,转入人数不得超过转入专业当年招生数的3-5%。 4、学生本人向所在学院提出申请并填写《转专业申请表》,由学院审核同意后统一报教务处。 5、经教务处审核通过并办理相关手续后,申请人(不包括满足转专业条件第1、2条者)于每学年第一学期开学前参加教务处组织的文、理科选拔考试。考试内容:理科为数学、英语。文科为英语,有的大学再加政治,有的加考计算机。到学校自己就知道以往都靠什么课程了。测试成绩按文、理科分别排序,并根据排序的结果由申请人依次挑选自己要求转入的专业。 (一)在校本科生在完成大学一年级课程,进入二年级之前,理由充足者可以申请转专业。 充足的理由包括:1、在某一学科方面确有特长的学生。2、因为身体健康原因,经学校指定的医疗单位检查证明不能在原专业学习、但尚能在本校其他专业学习者;3、通过转专业能有利于学生自主学习成材,且参加学校的选拔,选拔合格者(多数都用这一条)。 (二)不具备条件者不能申请转专业。 条件包括:1、新生入学未满一年者;2、二年级及以上者;3、各类委培,代培生未经委托单位同意转专业者;4、艺术类、体育类考生,跨文、理科类别转专业者;5、跨高考录取批次转专业者;6、已办理试读手续者;7、曾转专业或转学者;8、专科升入本科者。 (三)转专业的学籍管理: 1、学生转入新的专业,原则上按照入学时的年级所适用的学籍管理细则进行管理。 2、学生转入新的专业后,必须完成转入专业的教学计划方可毕业和获得学士学位。
1 下一页