C# - Word guessing game
C# - Word guessing game
CODE
using System;
namespace SampleNS
{
class Program
{
static void Main(string[] args)
{
string[] words = { "cat", "mat", "can", "door", "key", "hen", "rat" };
//Generate a random number and select the word from the list of the words in the array
Random rnd = new Random();
int randomNumber = rnd.Next(words.Length);
string computerGuessedWord = words[randomNumber].ToLower();
//Generate a masked word with the same length.
string maskedComputerGuessedWord = new string('*', computerGuessedWord.Length);
Console.WriteLine("I have a word in my mind. Can you guess that?");
bool isWordCorrect = false;
while(!isWordCorrect)
{
Console.Write("Enter a letter in the word {0} : ", maskedComputerGuessedWord);
string guessedLetter = Console.ReadLine();
guessedLetter = guessedLetter.ToLower();
if (guessedLetter.Length != 1)
Console.WriteLine("Please enter only a single letter.");
if (computerGuessedWord.Contains(guessedLetter))
{
//Add letters to the masked word as and when the user guesses a letter.
string tempMaskedComputerGuessedWord = "";
for (int i = 0; i < computerGuessedWord.Length; i++)
{
if(maskedComputerGuessedWord[i] == '*')
{
if(computerGuessedWord[i].ToString() == guessedLetter)
tempMaskedComputerGuessedWord += guessedLetter;
else
tempMaskedComputerGuessedWord += maskedComputerGuessedWord[i].ToString();
}
else
tempMaskedComputerGuessedWord += maskedComputerGuessedWord[i].ToString();
}
maskedComputerGuessedWord = tempMaskedComputerGuessedWord;
//Check if the user has guessed the correct word.
if(computerGuessedWord == maskedComputerGuessedWord)
{
Console.WriteLine("You have guessed it correct. The correct word is {0}.", computerGuessedWord);
isWordCorrect = true;
}
}
else
Console.WriteLine("Sorry. The letter '{0}' is not in the word.", guessedLetter);
}
Console.ReadKey();
}
}
}
Comments
Post a Comment