diff --git a/ConsoleApplication1/ConsoleApplication1.sdf b/ConsoleApplication1/ConsoleApplication1.sdf new file mode 100644 index 0000000..0827b02 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1.sdf differ diff --git a/ConsoleApplication1/ConsoleApplication1.sln b/ConsoleApplication1/ConsoleApplication1.sln new file mode 100644 index 0000000..eee8699 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.30501.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ConsoleApplication1", "ConsoleApplication1\ConsoleApplication1.vcxproj", "{D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7}.Debug|Win32.ActiveCfg = Debug|Win32 + {D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7}.Debug|Win32.Build.0 = Debug|Win32 + {D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7}.Release|Win32.ActiveCfg = Release|Win32 + {D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/ConsoleApplication1/ConsoleApplication1.v12.suo b/ConsoleApplication1/ConsoleApplication1.v12.suo new file mode 100644 index 0000000..de6afe5 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1.v12.suo differ diff --git a/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.cpp b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.cpp new file mode 100644 index 0000000..d67115a --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.cpp @@ -0,0 +1,11 @@ +// ConsoleApplication1.cpp : Defines the entry point for the console application. +// + +#include "stdafx.h" + + +int _tmain(int argc, _TCHAR* argv[]) +{ + return 0; +} + diff --git a/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj new file mode 100644 index 0000000..94d9d62 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj @@ -0,0 +1,95 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + {D51E1FFE-74D8-4F98-8B17-AB10FE9CAED7} + Win32Proj + ConsoleApplication1 + + + + Application + true + v120 + Unicode + + + Application + false + v120 + true + Unicode + + + + + + + + + + + + + true + + + false + + + + Use + Level3 + Disabled + WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + Use + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + + + + + Create + Create + + + + + + \ No newline at end of file diff --git a/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj.filters b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj.filters new file mode 100644 index 0000000..33745b0 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/ConsoleApplication1.vcxproj.filters @@ -0,0 +1,36 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.read.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.read.1.tlog new file mode 100644 index 0000000..7e77554 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.read.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.write.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.write.1.tlog new file mode 100644 index 0000000..c298b12 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/CL.write.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/ConsoleApplication1.lastbuildstate b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/ConsoleApplication1.lastbuildstate new file mode 100644 index 0000000..50a11fa --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/ConsoleApplication1.lastbuildstate @@ -0,0 +1,2 @@ +#TargetFrameworkVersion=v4.0:PlatformToolSet=v120:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit +Debug|Win32|C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\| diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/cl.command.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/cl.command.1.tlog new file mode 100644 index 0000000..0cdc81d Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/cl.command.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.command.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.command.1.tlog new file mode 100644 index 0000000..2478b77 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.command.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.read.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.read.1.tlog new file mode 100644 index 0000000..3ca4b29 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.read.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.write.1.tlog b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.write.1.tlog new file mode 100644 index 0000000..538b762 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleA.D51E1FFE.tlog/link.write.1.tlog differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.log b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.log new file mode 100644 index 0000000..4add7d3 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.log @@ -0,0 +1,16 @@ +Build started 1/28/2015 6:30:54 AM. +Project "C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.vcxproj" on node 2 (Build target(s)). +ClCompile: + C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\CL.exe /c /ZI /nologo /W3 /WX- /sdl /Od /Oy- /D WIN32 /D _DEBUG /D _CONSOLE /D _LIB /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yc"stdafx.h" /Fp"Debug\ConsoleApplication1.pch" /Fo"Debug\\" /Fd"Debug\vc120.pdb" /Gd /TP /analyze- /errorReport:prompt stdafx.cpp + stdafx.cpp + C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\CL.exe /c /ZI /nologo /W3 /WX- /sdl /Od /Oy- /D WIN32 /D _DEBUG /D _CONSOLE /D _LIB /D _UNICODE /D UNICODE /Gm /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Yu"stdafx.h" /Fp"Debug\ConsoleApplication1.pch" /Fo"Debug\\" /Fd"Debug\vc120.pdb" /Gd /TP /analyze- /errorReport:prompt ConsoleApplication1.cpp + ConsoleApplication1.cpp +Link: + C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\Debug\ConsoleApplication1.exe" /INCREMENTAL /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\Debug\ConsoleApplication1.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\Debug\ConsoleApplication1.lib" /MACHINE:X86 Debug\ConsoleApplication1.obj + Debug\stdafx.obj + ConsoleApplication1.vcxproj -> C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\Debug\ConsoleApplication1.exe +Done Building Project "C:\Users\IEUser\Cpp_Lab_03\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.vcxproj" (Build target(s)). + +Build succeeded. + +Time Elapsed 00:00:01.89 diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.obj b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.obj new file mode 100644 index 0000000..1f7dcf3 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.obj differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.pch b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.pch new file mode 100644 index 0000000..66ab5d6 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/ConsoleApplication1.pch differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/stdafx.obj b/ConsoleApplication1/ConsoleApplication1/Debug/stdafx.obj new file mode 100644 index 0000000..055db10 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/stdafx.obj differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/vc120.idb b/ConsoleApplication1/ConsoleApplication1/Debug/vc120.idb new file mode 100644 index 0000000..d28801f Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/vc120.idb differ diff --git a/ConsoleApplication1/ConsoleApplication1/Debug/vc120.pdb b/ConsoleApplication1/ConsoleApplication1/Debug/vc120.pdb new file mode 100644 index 0000000..02f0196 Binary files /dev/null and b/ConsoleApplication1/ConsoleApplication1/Debug/vc120.pdb differ diff --git a/ConsoleApplication1/ConsoleApplication1/ReadMe.txt b/ConsoleApplication1/ConsoleApplication1/ReadMe.txt new file mode 100644 index 0000000..4cb8a2f --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/ReadMe.txt @@ -0,0 +1,40 @@ +======================================================================== + CONSOLE APPLICATION : ConsoleApplication1 Project Overview +======================================================================== + +AppWizard has created this ConsoleApplication1 application for you. + +This file contains a summary of what you will find in each of the files that +make up your ConsoleApplication1 application. + + +ConsoleApplication1.vcxproj + This is the main project file for VC++ projects generated using an Application Wizard. + It contains information about the version of Visual C++ that generated the file, and + information about the platforms, configurations, and project features selected with the + Application Wizard. + +ConsoleApplication1.vcxproj.filters + This is the filters file for VC++ projects generated using an Application Wizard. + It contains information about the association between the files in your project + and the filters. This association is used in the IDE to show grouping of files with + similar extensions under a specific node (for e.g. ".cpp" files are associated with the + "Source Files" filter). + +ConsoleApplication1.cpp + This is the main application source file. + +///////////////////////////////////////////////////////////////////////////// +Other standard files: + +StdAfx.h, StdAfx.cpp + These files are used to build a precompiled header (PCH) file + named ConsoleApplication1.pch and a precompiled types file named StdAfx.obj. + +///////////////////////////////////////////////////////////////////////////// +Other notes: + +AppWizard uses "TODO:" comments to indicate parts of the source code you +should add to or customize. + +///////////////////////////////////////////////////////////////////////////// diff --git a/ConsoleApplication1/ConsoleApplication1/stdafx.cpp b/ConsoleApplication1/ConsoleApplication1/stdafx.cpp new file mode 100644 index 0000000..f1d63e0 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/stdafx.cpp @@ -0,0 +1,8 @@ +// stdafx.cpp : source file that includes just the standard includes +// ConsoleApplication1.pch will be the pre-compiled header +// stdafx.obj will contain the pre-compiled type information + +#include "stdafx.h" + +// TODO: reference any additional headers you need in STDAFX.H +// and not in this file diff --git a/ConsoleApplication1/ConsoleApplication1/stdafx.h b/ConsoleApplication1/ConsoleApplication1/stdafx.h new file mode 100644 index 0000000..b005a83 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/stdafx.h @@ -0,0 +1,15 @@ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#pragma once + +#include "targetver.h" + +#include +#include + + + +// TODO: reference additional headers your program requires here diff --git a/ConsoleApplication1/ConsoleApplication1/targetver.h b/ConsoleApplication1/ConsoleApplication1/targetver.h new file mode 100644 index 0000000..87c0086 --- /dev/null +++ b/ConsoleApplication1/ConsoleApplication1/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include diff --git a/ConsoleApplication1/Debug/ConsoleApplication1.exe b/ConsoleApplication1/Debug/ConsoleApplication1.exe new file mode 100644 index 0000000..9abb0c3 Binary files /dev/null and b/ConsoleApplication1/Debug/ConsoleApplication1.exe differ diff --git a/ConsoleApplication1/Debug/ConsoleApplication1.ilk b/ConsoleApplication1/Debug/ConsoleApplication1.ilk new file mode 100644 index 0000000..f84f3b4 Binary files /dev/null and b/ConsoleApplication1/Debug/ConsoleApplication1.ilk differ diff --git a/ConsoleApplication1/Debug/ConsoleApplication1.pdb b/ConsoleApplication1/Debug/ConsoleApplication1.pdb new file mode 100644 index 0000000..b090ca3 Binary files /dev/null and b/ConsoleApplication1/Debug/ConsoleApplication1.pdb differ diff --git a/ConsoleApplication1/ipch/consoleapplication1-32c59359/consoleapplication1-3c45e224.ipch b/ConsoleApplication1/ipch/consoleapplication1-32c59359/consoleapplication1-3c45e224.ipch new file mode 100644 index 0000000..cd286b1 Binary files /dev/null and b/ConsoleApplication1/ipch/consoleapplication1-32c59359/consoleapplication1-3c45e224.ipch differ diff --git a/Lab3_1.cpp b/Lab3_1.cpp new file mode 100644 index 0000000..18b347c --- /dev/null +++ b/Lab3_1.cpp @@ -0,0 +1,135 @@ +//Tic-Tac-Toe Game +// +#include + +using namespace std; + +void display_board(); +void player_turn(); +void gameover(); + +char turn; +bool draw = false; +char board[3][3] = { { '1', '2', '3' }, { '4', '5', '6' }, { '7', '8', '9' } }; + +int _tmain(int argc, _TCHAR* argv[]) +{ + cout << "Tic-Tac-Toe Game"; + cout << "Player 1 [x] --- Player 2 [o]"; + turn = 'X' + + while (!gameover()) + { + display_board(); + player_turn(); + gameover(); + + } + + if (turn == '0' && !draw) + { + display_board(); + cout << endl << endl << "Player 1 [X] Wins! Game over!\n"; + } + else if (turn == 'X' && !draw) + { + display_board(); + cout << endl << endl << "Player 2 [O] Wins! Game over!\n"; + } + else + { + display_board(); + cout << endl << endl << "It's a tie! Game over!\n"; + } +} + +void display_board() +{ + cout << "---------------------" << endl << endl; + cout << " | | " << endl; + cout << " " << board[0][0] << " | " << board[0][1] << " | " << board[0][2] << endl; + cout << "______|______|______" << endl; + cout << " | | " << endl; + cout << " " << board[1][0] << " | " << board[1][1] << " | " << board[1][2] << endl; + cout << "______|______|______" << endl; + cout << " | | " << endl; + cout << " " << board[2][0] << " | " << board[2][1] << " | " << board[2][2] << endl; + cout << " | | " << endl; +} + +void player_turn() +{ + int choice; + int row = 0, column = 0; + + if (turn == 'X') + { + cout << "Player 1 turn [X]: "; + } + else if (turn == 'O') + { + cout << "Player 2 turn [O]: "; + } + cin << choice; + + switch (choice) + { + case 1: row = 0; column = 0; break; + case 2: row = 0; column = 1; break; + case 3: row = 0; column = 2; break; + case 4: row = 1; column = 0; break; + case 5: row = 1; column = 1; break; + case 6: row = 1; column = 2; break; + case 7: row = 2; column = 0; break; + case 8: row = 2; column = 1; break; + case 9: row = 2; column = 2; break; + default: + cout << "You didn't get a correct number! Try again\n"; + player_turn(); + } + + if (turn == 'X' && board[row][column] != 'X' && board[row][column] != 'O') + { + board[row][column] = 'X'; + turn = 'O'; + } + else if (turn == 'O' && board[row][column] != 'X' && board[row][column] != 'O') + { + board[row][column] = 'O'; + turn = 'X'; + } + else + { + cout << "That space is taken up already! Please try again."; + player_turn(); + } + +} + +bool gameover() +{ + for (int i = 0; i < 3; i++)//Getting a win + { + if ((board[i][0] == board[i][1] && board[i][1] == board[i][2]) || (board[0][i] == board[1][i] && board[1][i] == board[2][i]) || (board[0][0] == board[1][1] && board[1][1] == board[2][2]) || (board[0][2] == board[1][1] && board[1][1] == board[2][0])) + { + return true; + } + } + + for (int i = 0; i < 3; i++)//Getting a tie + { + for (int j = 0; j < 3; j++) + { + if (board[i][j] != 'X' && board[i][j] != 'O') + { + return false; + } + } + } + + draw = true; + return true; +} + return 0; +} +