#include #include void kuva(char m[][10]){ int i=0; int j=0; while(i<10){ while(j<10){ printf("%c", m[i][j]); j=j+1; } printf("\n"); j=0; i=i+1; } printf("\n"); } void liigu_s(int *lopp, char m[][10],int liikumine, int mina_i,int mina_j){ if(m[mina_i+1][mina_j]=='O'){*lopp=0;} else{if(mina_i+1==10){*lopp=1;} m[mina_i][mina_j]='´'; m[mina_i+1][mina_j]='+'; } } void liigu_n(int *lopp, char m[][10],int liikumine, int mina_i,int mina_j){ if(m[mina_i-1][mina_j]=='O'){*lopp=0;} else{if(mina_i-1==-1){*lopp=1;} m[mina_i][mina_j]='´'; m[mina_i-1][mina_j]='+'; } } void liigu_e(int *lopp, char m[][10],int liikumine, int mina_i,int mina_j){ if(m[mina_i][mina_j+1]=='O'){*lopp=0;} else{if(mina_j+1==10){*lopp=1;} m[mina_i][mina_j]='´'; m[mina_i][mina_j+1]='+'; } } void liigu_w(int *lopp, char m[][10],int liikumine, int mina_i,int mina_j){ if(m[mina_i][mina_j-1]=='O'){*lopp=0;} else{if(mina_j-1==-1){*lopp=1;} m[mina_i][mina_j]='´'; m[mina_i][mina_j-1]='+'; } } void koll_liigub(int *mitmes, char m [][10], int *koll_i, int *koll_j, int mina_i, int mina_j, int *lopp){ int is=*koll_i; int js=*koll_j; *mitmes=*mitmes+1; if(mina_i>*koll_i){*koll_i=*koll_i+1;} if(mina_i<*koll_i){*koll_i=*koll_i-1;} if(mina_j>*koll_j){*koll_j=*koll_j+1;} if(mina_j<*koll_i){*koll_j=*koll_j-1;} if(m[*koll_i][*koll_j]=='O'){*lopp=2;} else{if(m[*koll_i][*koll_j]=='+'){*lopp=3;} m[is][js]='´'; m[*koll_i][*koll_j]='X'; } } int main(void){ char m[10][10]; int mitmes=0; int i=0; int j=0; int k=0; int lopp=10; int mina_i, mina_j, koll_i, koll_j, O1_i, O1_j, O2_i, O2_j; char abi; int liikumine; while(i<10){ while(j<10){ m[i][j]='´'; j=j+1; } j=0; i=i+1; } srand(time(0)); m[0][1]='+'; m[0][2]='X'; m[0][3]='O'; m[0][0]='O'; while(k<4){ i=rand()%10; j=rand()%10; abi=m[0][k]; if(k==0){O1_i=i; O1_j=j;} if(k==1){mina_i=i; mina_j=j;} if(k==2){koll_i=i; koll_j=j;} if(k==3){O2_i=i; O2_j=j;} m[0][k]=m[i][j]; m[i][j]=abi; k=k+1; } kuva(m); while(lopp==10){ scanf("%d/n", &liikumine); if(liikumine==8){liigu_n(&lopp,m,liikumine,mina_i,mina_j);mina_i=mina_i-1;} if(liikumine==2){liigu_s(&lopp,m,liikumine,mina_i,mina_j);mina_i=mina_i+1;} if(liikumine==6){liigu_e(&lopp,m,liikumine,mina_i,mina_j);mina_j=mina_j+1;} if(liikumine==4){liigu_w(&lopp,m,liikumine,mina_i,mina_j);mina_j=mina_j-1;} liikumine=0; kuva(m); koll_liigub(&mitmes,m,&koll_i,&koll_j,mina_i,mina_j,&lopp); kuva(m); } if(lopp==0){printf("Mäng läbi, jooksid vastu posti surnuks");} if(lopp==1){printf("Mäng läbi, kukkusid alla");} if(lopp==2){printf("Mäng läbi, koll jooksis end surnuks");} if(lopp==3){printf("Mämg läbi, koll sai sind kätte %d", mitmes, "käiguga");} return 0; }