From de95e5bd4c3f5e73e1cfa329d545c4065a89f7c7 Mon Sep 17 00:00:00 2001 From: ahsanbarkati Date: Fri, 27 Jan 2017 15:36:47 +0530 Subject: [PATCH 1/6] Create try --- try | 1 + 1 file changed, 1 insertion(+) create mode 100644 try diff --git a/try b/try new file mode 100644 index 0000000..30ba5bb --- /dev/null +++ b/try @@ -0,0 +1 @@ +making a new file in my brach and sending pull request to the master branch From 2f775d2c626b51cfb3cf1a1c5b28e95a46badd1c Mon Sep 17 00:00:00 2001 From: Ahsan Barkati Date: Mon, 30 Jan 2017 19:16:13 +0530 Subject: [PATCH 2/6] com --- try | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/try b/try index 30ba5bb..0436afe 100644 --- a/try +++ b/try @@ -1 +1 @@ -making a new file in my brach and sending pull request to the master branch +making a new file in my brach and sending pull request to the master branch....yesss From eb2f2921c6f7bd4e732e62cc4e947dfe657369af Mon Sep 17 00:00:00 2001 From: ahsanbarkati Date: Mon, 30 Jan 2017 19:21:25 +0530 Subject: [PATCH 3/6] Update try --- try | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/try b/try index 0436afe..e32759b 100644 --- a/try +++ b/try @@ -1 +1,4 @@ -making a new file in my brach and sending pull request to the master branch....yesss +git remote add Ahsan https://github.com/ahsanbarkati/ACA_Haskell.git +git push serversbrnchname loclbrnchname +git pull +git push From 6674484a227b205f361698668338bd431417d189 Mon Sep 17 00:00:00 2001 From: ahsanbarkati Date: Mon, 30 Jan 2017 19:24:07 +0530 Subject: [PATCH 4/6] Update try --- try | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/try b/try index e32759b..9808d5e 100644 --- a/try +++ b/try @@ -1,4 +1,4 @@ git remote add Ahsan https://github.com/ahsanbarkati/ACA_Haskell.git git push serversbrnchname loclbrnchname -git pull +git pull git push From 939272d5a35b37eb2f4028a77ca836b7a20770ad Mon Sep 17 00:00:00 2001 From: Ahsan Barkati Date: Sun, 12 Feb 2017 00:07:46 +0530 Subject: [PATCH 5/6] The tic tac toe first --- tic.c | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 tic.c diff --git a/tic.c b/tic.c new file mode 100644 index 0000000..f05323a --- /dev/null +++ b/tic.c @@ -0,0 +1,61 @@ +#include +char mat[3][3]={' ',' ',' ', +' ',' ',' ', +' ',' ',' '},i,arr[9]={0,0,0,0,0,0,0,0,0}; //arr is 0 where input is to be taken + +void printmat(){ + int i,j; + printf("\n"); + for(i=0;i<3;i++){ + for(j=0;j<3;j++) + printf("%c ",mat[i][j]); + printf("\n"); + } +} + +void printopt(){ + printf("\n"); + int i,j,p,c=1,t; + for(i=0;i<3;i++) + for(j=0;j<3;j++){ + //printf("%d",mat[i][j]); + if(mat[i][j]!=' '){ + t=3*i+j; + arr[t]=1; + } + } + + for(p=0;p<9;p++){ + if(arr[p]==0){ + printf("%d.(%d,%d)\n",c,(p)/3+1,(p)%3+1); + c++; + } + } +} + +int matammend(int ind,int in){ + int i; + for(i=0;i<9;i++){ + if(arr[i]==0){ + in--; + if(in==0){ + if(ind%2==0)mat[i/3][i%3]='X'; + else mat[i/3][i%3]='O'; + } + } + } +} +int main(){ +int in; +for(i=0;i<9;i++){ + +printopt(); +scanf("%d",&in); +matammend(i,in); +printmat(); + + +} + +} + From 62e1ae96f6224f76cccfb2bbcfa139e4ababbf54 Mon Sep 17 00:00:00 2001 From: ahsanbarkati Date: Tue, 21 Feb 2017 19:09:42 +0530 Subject: [PATCH 6/6] TicTacToe v1.0 --- TicTacToe.hs | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 TicTacToe.hs diff --git a/TicTacToe.hs b/TicTacToe.hs new file mode 100644 index 0000000..8b352a6 --- /dev/null +++ b/TicTacToe.hs @@ -0,0 +1,57 @@ +sm a x y c=do + let check1 =0 + let check2 =0 + let check3 =0 + let check4 =0 + let check5 =0 + let check6 =0 + let check7 =0 + let check8 =0 + if (a!!x!!y/=2) + then do + print "INVALID COORDINATES!! enter unfilled coordinates" + y<-getLine + x<-getLine + sm a (read x::Int) (read y::Int) c + else return() + + let row=a!!y + let p1=take x row + let p2= drop (x+1) row + let nrow=p1++[c `mod` 2]++p2 + let py1=take y a + let py2=drop (y+1) a + let f=py1++[nrow]++py2 + print (f!!0) + print (f!!1) + print (f!!2) + let b = c+1 + check1 <- if (f!!0!!0==f!!0!!1)&&(f!!0!!1==f!!0!!2)&&(f!!0!!2/=2) then return (1) else return (0) + check2 <- if (f!!1!!0==f!!1!!1)&&(f!!1!!1==f!!1!!2)&&(f!!1!!2/=2) then return (1) else return (0) + check3 <- if (f!!2!!0==f!!2!!1)&&(f!!2!!1==f!!2!!2)&&(f!!2!!2/=2) then return (1) else return (0) + check4 <- if (f!!0!!0==f!!1!!0)&&(f!!2!!0==f!!1!!0)&&(f!!1!!0/=2) then return (1) else return (0) + check5 <- if (f!!0!!1==f!!1!!1)&&(f!!1!!1==f!!2!!1)&&(f!!2!!1/=2) then return (1) else return (0) + check6 <- if (f!!0!!2==f!!1!!2)&&(f!!2!!2==f!!1!!2)&&(f!!1!!2/=2) then return (1) else return (0) + check7 <- if (f!!0!!0==f!!1!!1)&&(f!!1!!1==f!!2!!2)&&(f!!2!!2/=2) then return (1) else return (0) + check8 <- if (f!!0!!2==f!!1!!1)&&(f!!1!!1==f!!2!!0)&&(f!!2!!0/=2) then return (1) else return (0) + let check = check1+check2+check3+check4+check5+check6+check7+check8 + if (check/=0) + then do + print "Game Over" + print (c `mod` 2) + print "Wins" + else return() + print "Please enter x and y coordinates for next turn " + y<-getLine + x<-getLine + if (check==0) then sm f (read x::Int) (read y::Int) b else print ("GAME OVER ") + +main=do + let f=[[2,2,2],[2,2,2],[2,2,2]] + print (f!!0) + print (f!!1) + print (f!!2) + print "Please enter x and y coordinates for first turn " + x<-getLine + y<-getLine +sm f (read x::Int) (read y::Int) 0