S - O - S oyunu 3x3 lük matriste
1 sayfadaki 1 sayfası
S - O - S oyunu 3x3 lük matriste
- Kod:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int game[4][4]={{0}};//tum alanların bos oldugu belırtıldı
int a,konum,satir=0,sutun=0;
int b,bitis=0;
int sayac=1,m,n;
char oyuncu,karakter;
printf(" *** S-O-S GAME ***\n");
printf("\n S-O-S table \n ------------\n");
for(a=1;a<4;a++){
for(b=1;b<4;b++){
if(game[a][b]==0)printf(" . ");
}
printf("\n\n");
}
printf("hangi oyuncu baslamak istiyor? (s or o):");
scanf("%c",&oyuncu);
karakter=oyuncu;
while(sayac<10)
{
while(1)
{
while(1)
{
printf("\n%c oyuncusu tasinizi nereye koymak istersiniz[1-9]:",karakter);
scanf("%d",&konum);
if(konum<4)satir=1,sutun=konum;
else if(konum<7)satir=2,sutun=konum-3;
else satir=3,sutun=konum-6;
if(game[satir][sutun]==0)break;
else printf("\nlutfen bos bir alan seciniz\n");
}
if(karakter=='s')game[satir][sutun]=1,karakter='o';
else if(karakter=='o')game[satir][sutun]=2,karakter='s';
if(konum>=1 && konum<=9)break;
else printf("\nlutfen belirtilen aralikta secim yapiniz\n");
}
// ekran cıktısı bolumu
printf("\n S-O-S table \n ------------\n");
for(a=1;a<4;a++)
{
for(b=1;b<4;b++)
{
if(game[a][b]==0)printf(" . ");
else if(game[a][b]==1)printf(" S ");
else printf(" O ");
}
printf("\n\n");
}
if(sayac>2){
for(m=1;m<4;m++)
{ ///bu forlar yardımı ıle ılk x i buldum ve ona gore kotrollere gıdecegım
for(n=1;n<4;n++)
{
if(game[m][n]==1)break;
}
if(game[m][n]==1)break;
}
if(game[m][1]==1&&game[m][2]==2&&game[m][3]==1)
{
if(oyuncu=='s' )
{
if(sayac%2==1)bitis=1;
else bitis=2;
}
else {
if(sayac%2==1)bitis=2;
else bitis=1;
}
}
else if(game[1][n]==1&&game[2][n]==2&&game[3][n]==1)
{
if(oyuncu=='s' )
{
if(sayac%2==1)bitis=1;
else bitis=2;
}
else
{
if(sayac%2==1)bitis=2;
else bitis=1;
}
}
else if(game[m][1]==1&&game[m][2]==2&&game[m][3]==1)
{
if(oyuncu=='s' )
{
if(sayac%2==1)bitis=1;
else bitis=2;
}
else
{
if(sayac%2==1)bitis=2;
else bitis=1;
}
}
else if(m==1)
{
if(n==1)
{
if(game[2][2]==2&&game[3][3]==1)
{
if(oyuncu=='s' )
{
if(sayac%2==1)bitis=1;
else bitis=2;
}
else
{
if(sayac%2==1)bitis=2;
else bitis=1;
}
}
}
else if(n==3)
{
if(game[2][2]==2&&game[3][1]==1)
{
if(oyuncu=='s' )
{
if(sayac%2==1)bitis=1;
else bitis=2;
}
else
{
if(sayac%2==1)bitis=2;
else bitis=1;
}
}
}
}
if(bitis==1 || bitis==2)break;
}
sayac++;
}
if(bitis==1)printf("\n\nS oyuncusu oyunu kazandi..\n\n");
else if(bitis==2)printf("\n\n O oyuncusu oyunu kazandi..\n\n");
else printf("\n\noyun berabere bitti...\n\n");
printf("\n@ercanpinar \n\n");
system("PAUSE");
return 0;
}
1 sayfadaki 1 sayfası
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz