All pastes #30025 Raw Edit

Brad

public text v1 · immutable
#30025 ·published 2005-11-21 19:17 UTC
rendered paste body
using System;

namespace Mastermind

{

enum Colour

{

Red,

Yellow,

Orange,

Blue, 

Green,

White}

 

class Class1

{

public static void MarkPegs ( 

string master, 

string guess,

out int outNoOfRedPegs,

out int outNoOfWhitePegs )

{

outNoOfRedPegs = 0;

outNoOfWhitePegs = 0;

for ( int i=0 ; i < master.Length ; i = i + 1 ) 

{

if ( master[i] == guess[i] ) 

{

outNoOfRedPegs = outNoOfRedPegs + 1;

}

}

}

 

 

/// Performs a test of the MarkPegs method. The method prints out the number of

/// red and white pegs earned by a guess against a master string

/// <param name="master">master string</param>

/// <param name="guess">guess string</param>

public static void RunTest ( string master, string guess ) 

{

int NoOfWhitePegs = 0;

int NoOfRedPegs = 0;

Console.Write ( "Master : " + master + " Guess : " + guess ) ;

MarkPegs ( master, guess, out NoOfRedPegs, out NoOfWhitePegs);

Console.WriteLine ( " Red pegs : " + NoOfRedPegs + " White pegs : " + NoOfWhitePegs ) ;

}

/// <summary>

/// Summary description for Class1.

/// </summary>

/// <summary>

/// The main entry point for the application.

/// </summary>


static void Main(string[] args)

{


Console.WriteLine ( "Welcome to MasterMind" );

Console.WriteLine ( "Would you like to see the rules? (enter 0 for no, 1 for yes)" );

string inputString = Console.ReadLine();

int answer = int.Parse(inputString);

if (answer == 1) 

{

Console.WriteLine ( "Here are the ruels of the game" );


Console.WriteLine ( "The computer will pick four colours from a group of six" );

Console.WriteLine ( "Your job is to guess the correct sequence of colours" );

Console.WriteLine ( "Try to do it in the least number of guesses possible" );

Console.WriteLine ( "The sequnece can contain pegs of red, yellow, green, blue, white or black" );

Console.WriteLine ( "The same colour can not be used more than once in a sequence" );

}

Console.WriteLine ( "You have ten guesses to break the code" );

Console.WriteLine ( "The game is about to begin" );

Console.WriteLine ( "Remember, you are trying to break the code \n" );

//Rules of the game - allows the user to view them or not for faser play for the experienced mastermind players

System.Random rand = new System.Random();


Colour[] pegs = new Colour[4];


for ( int i=0 ; i < 4 ; i = i + 1 ) 

{

pegs [i] = (Colour) rand.Next (6);

Console.WriteLine("Peg {0} = {1}", i, pegs[i]);

}


RunTest ( "RBBO", "YROW" );

RunTest ( "RRRR", "RRRR" );

RunTest ( "OOBR", "RBOO" );


 

Console.WriteLine ( "Press Enter To Exit The Game" );

Console.ReadLine ();


}

}

}