Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- void inputter(int inntak,char alpha[9], char stafur)
- {
- alpha[inntak-1] = stafur;
- }
- char stafbreytir(char stafur)
- {
- if(stafur=='O')
- {
- stafur='X';
- }
- else if(stafur=='X')
- {
- stafur='O';
- }
- return stafur;
- }
- int checker(char alpha[9])
- {
- char winner;
- if((alpha[0]=='X' && alpha[4]=='X' && alpha[8]=='X')||(alpha[2]=='X' && alpha[4]=='X' && alpha[6]=='X'))//Ská X
- {
- winner = 'X';
- }
- else if((alpha[0]=='O'&&alpha[4]=='O'&&alpha[8]=='O')||(alpha[2]=='O'&&alpha[4]=='O'&&alpha[6]=='O'))//Ská O
- {
- winner = 'O';
- }
- else if((alpha[0]=='X'&&alpha[1]=='X'&&alpha[2]=='X')||(alpha[3]=='X'&&alpha[4]=='X'&&alpha[5]=='X')||(alpha[6]=='X'&&alpha[7]=='X'&&alpha[8]=='X'))//lóðrétt X
- {
- winner = 'X';
- }
- else if((alpha[0]=='O'&&alpha[1]=='O'&&alpha[2]=='O')||(alpha[3]=='O'&&alpha[4]=='O'&&alpha[5]=='O')||(alpha[6]=='O'&&alpha[7]=='O'&&alpha[8]=='O'))//lóðrétt O
- {
- winner = 'O';
- }
- else if((alpha[0]=='X'&&alpha[3]=='X'&&alpha[6]=='X')||(alpha[1]=='X'&&alpha[4]=='X'&&alpha[7]=='X')||(alpha[2]=='X'&&alpha[5]=='X'&&alpha[8]=='X'))//Lárett X
- {
- winner = 'X';
- }
- else if((alpha[0]=='O'&&alpha[3]=='O'&&alpha[6]=='O')||(alpha[1]=='O'&&alpha[4]=='O'&&alpha[7]=='O')||(alpha[2]=='O'&&alpha[5]=='O'&&alpha[8]=='O'))//Lárett O
- {
- winner = 'O';
- }
- else
- {
- winner = 'N';
- }
- return winner;
- }
- int input(char stafur, char alpha[9])
- {
- int inntak,teljari=0;
- while(teljari < 10)
- {
- cout << stafur << " position: ";
- cin >> inntak;
- if(!isdigit(inntak))
- {
- cin.clear();
- cin.ignore(100, '\n');
- cout << "Illegal move!" << "bug" << endl;
- }
- else if(alpha[inntak-1] == 'X' || alpha[inntak-1] == 'O'||inntak > 9)
- {
- cout << "Illegal move!" << endl;
- inntak = 0;
- }
- else
- {
- teljari = 10;
- }
- }
- return inntak;
- }
- void drawer(char alpha[8])
- {
- int data[9]={1,2,3,4,5,6,7,8,9};
- for(int i=0;i < 9;i++)
- {
- if(i == 2||i == 5)
- {
- if(alpha[i] == 'X'||alpha[i] == 'O')
- {
- cout << alpha[i] << " \n";
- }
- else
- {
- cout << data[i] << " \n";
- }
- }
- else
- {
- if(alpha[i] == 'X'||alpha[i] == 'O')
- {
- cout << alpha[i] << " ";
- }
- else
- {
- cout << data[i] << " ";
- }
- }
- }
- cout << endl;
- }
- int main()
- {
- char alpha[9]={'E','E','E','E','E','E','E','E','E'};
- char stafur = 'O', winner;
- int inntak, teljari = 0;
- while(teljari < 10)
- {
- drawer(alpha);
- stafur = stafbreytir(stafur);
- inntak = input(stafur,alpha);
- inputter(inntak,alpha,stafur);
- winner = checker(alpha);
- if(winner=='O'||winner=='X')
- {
- drawer(alpha);
- cout << "Winner is: " << winner << endl;
- teljari=10;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement