Programmera spel i C++ för nybörjare/Luffarchack
Utseende
Det här spelets främsta förtjänst är att det visar hur en tvådimensionell array kan användas för att skapa en enkel spelplan i konsollfönstret. Grunderna är färdigprogrammerade så den som vill vidareutveckla spelet borde inte ha några problem. Koden har få kommentarer men den är lätt att förstå ändå.
//Koden skänkt till wikibooks av Mattias Olsson, John Bauergymansiet i Uddevalla //December 2011 #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { bool gameover = false; bool xtur = true; bool harvalt = false; //om man lagt ut en spelpjäs int schack [3][3] ={0};//Skapa array för spelplan 3x3 rutor while (gameover == false) {//gameover int valdsiffra =0; if (xtur == true) cout << "vart vill du sätta ditt 1?" << endl; else cout << "vart vill du sätta ditt 2?" << endl; cout << "1=A1" << endl; cout << "2=A2" << endl; cout << "3=A3" << endl; cout << "4=B1" << endl; cout << "5=B2" << endl; cout << "6=B3" << endl; cout << "7=C1" << endl; cout << "8=C2" << endl; cout << "9=C3" << endl; cin >>valdsiffra; if (valdsiffra==1) { if (schack [0][0]==0) { if (xtur==true) schack [0][0]=1; //1 tur else schack [0][0]=2; //2 tur harvalt = true; } else cout << "A1 är upptaget" << endl; } if (valdsiffra==2) { if (schack [1][0]==0) { if (xtur==true) schack [1][0]=1; //1 tur else schack [1][0]=2; //2 tur harvalt = true; } else cout << "A2 är upptaget" << endl; } if (valdsiffra==3) { if (schack [2][0]==0) { if (xtur==true) schack [2][0]=1; //1 tur else schack [2][0]=2; //2 tur harvalt = true; } else cout << "A3 är upptaget" << endl; } if (valdsiffra==4) { if (schack [0][1]==0) { if (xtur==true) schack [0][1]=1; //1 tur else schack [0][1]=2; //2 tur harvalt = true; } else cout << "B1 är upptaget" << endl; } if (valdsiffra==5) { if (schack [1][1]==0) { if (xtur==true) schack [1][1]=1; //1 tur else schack [1][1]=2; //2 tur harvalt = true; } else cout << "B2 är upptaget" << endl; } if (valdsiffra==6) { if (schack [2][1]==0) { if (xtur==true) schack [2][1]=1; //1 tur else schack [2][1]=2; //2 tur harvalt = true; } else cout << "B3 är upptaget" << endl; } if (valdsiffra==7) { if (schack [0][2]==0) { if (xtur==true) schack [0][2]=1; //1 tur else schack [0][2]=2; //2 tur harvalt = true; } else cout << "C1 är upptaget" << endl; } if (valdsiffra==8) { if (schack [1][2]==0) { if (xtur==true) schack [1][2]=1; //1 tur else schack [1][2]=2; //2 tur harvalt = true; } else cout << "C2 är upptaget" << endl; } if (valdsiffra==9) { if (schack [2][2]==0) { if (xtur==true) schack [2][2]=1; //1 tur else schack [2][2]=2; //2 tur harvalt = true; } else cout << "C3 är upptaget" << endl; } cout <<"A"<<" "<<"B"<<" "<<"C"<<endl; cout << endl; cout << schack [0][0] << "|" <<schack [0][1] << "|" <<schack [0][2] << endl; cout << "______" << endl; cout << schack [1][0] << "|" <<schack [1][1] << "|" <<schack [1][2] << endl; cout << "______" << endl; cout << schack [2][0] << "|" <<schack [2][1] << "|" <<schack [2][2] << endl; cout << endl; cout << endl; if ((schack [0][0]==1 && schack [0][1]==1 && schack [0][2]==1) || (schack [0][0]==2 && schack [0][1]==2 && schack [0][2]==2 ))//asdfdgfhj { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [1][0]==1 && schack [1][1]==1 && schack [1][2]==1) || (schack [1][0]==2 && schack [1][1]==2 && schack [1][2]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [2][0]==1 && schack [2][1]==1 && schack [2][2]==1) || (schack [2][0]==2 && schack [2][1]==2 && schack [2][2]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [0][0]==1 && schack [1][0]==1 && schack [2][0]==1) || (schack [0][0]==2 && schack [1][0]==2 && schack [2][0]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [0][1]==1 && schack [1][1]==1 && schack [2][1]==1) || (schack [0][1]==2 && schack [1][1]==2 && schack [2][1]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [0][2]==1 && schack[1][2]==1 && schack [2][2]==1) || (schack [0][2]== 2 && schack [1][2]==2 && schack [2][2]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [0][0]==1 && schack [1][1]==1 && schack [2][2]==1) || (schack [0][0]==2 && schack [1][1]==2 && schack [2][2]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if ((schack [2][0]==1 && schack [1][1]==1 && schack [0][2]==1) || (schack [2][0]==2 && schack [1][1]==2 && schack [0][2]==2 )) { //vinst gameover =true; if (schack [0][0] == 1) cout << "1 vann" << endl; else cout << "2 vann" << endl; } //vinst if (harvalt ==true) { if ( xtur == true) xtur = false; else xtur = true; } harvalt=false; //dags för den andra att välja } //gameover return 0; }//Slut på koden