Okay, I've decided I'm going to post my code so far. This is so you can laugh at me, again, and then you can point out what I should do. I realize that this is horrible programming, doing basically everything in one function. I also understand it will be hard to read.
It's been a while since my last program, so you'll have to bear with me. I want to make TicTacToe a class, I think. But I forgot how to use classes properly. I also want main to mainly be just a bunch of function calls, and I want to get rid of all those if statements, and just put them in a single function that I can call over and over.
Anyways, here is what I have so far..all helpful suggestions welcome:
quote:#include <stdio.h>
#include <iostream>
#include <string>
#include <cstdlib>
#include <cctype>
#include <iomanip>
//Game Type functions:
void OnePlayerGame();
void TwoPlayerGame();
int main(int argc, char *argv[])
{
//Game Introduction...
int NumOfPlayers = 3;
bool LoopControl = 0;
cout << "Welcome to Tic Tac Toe by David Demaree.\n";
do
{
cout << "Would you like to play 1 or 2 players (enter 0 to quit)? ";
cin >> NumOfPlayers;
//Switch to game or quit game:
if (NumOfPlayers == 0)
{
LoopControl = 1;
}
else if (NumOfPlayers == 1)
{
OnePlayerGame();
}
else if (NumOfPlayers == 2)
{
TwoPlayerGame();
}
else
{
cout << "You have entered an unsupported game type. Please enter 1 or 2.\n";
}
}while(LoopControl == 0);
return 0;
}
void onePlayerGame()
{
int oney = 0;
cout << "Welcome to the 1 player game.\n";
cin >> Oney;
}
void TwoPlayerGame()
{
string XorO = "unspoiled";
int i = 0;
int BoardPlay = 10;
int TicTacToeArray[9];
string TicTacToeDisplay[9];
bool XOLoop = 0;
bool GameLoop = 0;
for (i = 0; i < 9; i++)
{
TicTacToeArray = 0;<br> }<br><br> TicTacToeDisplay[0] = "1";<br> TicTacToeDisplay[1] = "2";<br> TicTacToeDisplay[2] = "3";<br> TicTacToeDisplay[3] = "4";<br> TicTacToeDisplay[4] = "5";<br> TicTacToeDisplay[5] = "6";<br> TicTacToeDisplay[6] = "7";<br> TicTacToeDisplay[7] = "8";<br> TicTacToeDisplay[8] = "9";<br><br><br> cout << "Welcome to the 2 player game.\n";<br><br>do{<br> cout << "Would you like to be X's or O's? Enter X to be X's or O to be O's. ";<br> cin >> XorO;<br> cout << "This is what was received for XorO: " << XorO << endl;<br><br> if (XorO == "X" || XorO == "x")<br> {<br> cout << "You have chosen to be X's.\n";<br> XorO = "X";<br> XOLoop = 1;<br> }<br> else if (XorO == "O" || XorO == "o")<br> {<br> cout << "You have chosen to be O's.\n";<br> XorO = "O";<br> XOLoop = 1;<br> }<br> else<br> {<br> cout << "Please enter X or O. You entered an unsupported selection.\n";<br> XOLoop = 0;<br> }<br>}while(XOLoop == 0);<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br><br>do{<br> cout << "Player " << XorO << ", where would you like to put your " << XorO << "?\n";<br> cout << "Enter a space on the board 1-9 (enter 0 to stop playing). ";<br> cin >> BoardPlay;<br><br> if (BoardPlay >= 0 && BoardPlay < 10)<br> {<br> if (BoardPlay == 0)<br> {<br> GameLoop = 1;<br> }<br> else if (BoardPlay == 1 && TicTacToeArray[0] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[0] = 55;<br> TicTacToeDisplay[0] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[0] = 88;<br> TicTacToeDisplay[0] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 2 && TicTacToeArray[1] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[1] = 55;<br> TicTacToeDisplay[1] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[1] = 88;<br> TicTacToeDisplay[1] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 3 && TicTacToeArray[2] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[2] = 55;<br> TicTacToeDisplay[2] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[2] = 88;<br> TicTacToeDisplay[2] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 4 && TicTacToeArray[3] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[3] = 55;<br> TicTacToeDisplay[3] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[3] = 88;<br> TicTacToeDisplay[3] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 5 && TicTacToeArray[4] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[4] = 55;<br> TicTacToeDisplay[4] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[4] = 88;<br> TicTacToeDisplay[4] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 6 && TicTacToeArray[5] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[5] = 55;<br> TicTacToeDisplay[5] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[5] = 88;<br> TicTacToeDisplay[5] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 7 && TicTacToeArray[6] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[6] = 55;<br> TicTacToeDisplay[6] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[6] = 88;<br> TicTacToeDisplay[6] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 8 && TicTacToeArray[7] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[7] = 55;<br> TicTacToeDisplay[7] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[7] = 88;<br> TicTacToeDisplay[7] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else if (BoardPlay == 9 && TicTacToeArray[8] == 0)<br> {<br> if (XorO == "X")<br> {<br> TicTacToeArray[8] = 55;<br> TicTacToeDisplay[8] = "X";<br> XorO = "O";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> else if (XorO == "O")<br> {<br> TicTacToeArray[8] = 88;<br> TicTacToeDisplay[8] = "O";<br> XorO = "X";<br><br> cout << "\n\n";<br> cout << " " << TicTacToeDisplay[6] << " | ";<br> cout << TicTacToeDisplay[7] << " | ";<br> cout << TicTacToeDisplay[8] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[3] << " | ";<br> cout << TicTacToeDisplay[4] << " | ";<br> cout << TicTacToeDisplay[5] << " " << endl;<br> cout << " ———–" << endl;<br> cout << " " << TicTacToeDisplay[0] << " | ";<br> cout << TicTacToeDisplay[1] << " | ";<br> cout << TicTacToeDisplay[2] << " " << endl << endl << endl;<br> }<br> }<br> else<br> cout << "That spot is already occupied, choose another.\n";<br> }<br><br><br> else<br> {<br> cout << "You entered an unsupported selection.\n";<br> GameLoop = 0;<br> }<br> }while(GameLoop == 0);<br><br> }<hr height=1 noshade></SPAN></BLOCKQUOTE><br><br>I also think I might be way off target here. I'm just trying to make a simple Tic Tac Toe game that can be played 1 or 2 players. I haven't even started checking for the winner yet. The one player game is not at all functional either at this point. <br><br><SPAN CLASS=editedby>[edited by - Zoltron_Laser on June 8, 2004 2:05:41 PM]</SPAN> <br><br><SPAN CLASS=editedby>[edited by - Zoltron_Laser on June 8, 2004 2:07:31 PM]</SPAN>