// Main.cs created with MonoDevelop
// User: stephen at 3:33 PM 3/29/2008
//
// To change standard headers go to Edit->Preferences->Coding->Standard Headers
//
using System;
namespace Learning
{
class MainClass
{
public static void Main(string[] args)
{
Console.WriteLine("Hai thar, welcome to Stephen's crappy C# Number Guessing Game.");
//Ask if user would like to use his/her own range.
Console.Write("Would you like to use your own range? [Y/N]");
string UserRangeAsk = Console.ReadLine();
int RangeMin = 0;
int RangeMax = 0;
if ((UserRangeAsk == "Y") || (UserRangeAsk == "y")) {
Console.Write("Input your range minimum:");
string UserInputRangeMin = Console.ReadLine();
if (int.TryParse(UserInputRangeMin, out RangeMin) == false) {
Console.WriteLine("Hey! That's not a number! You don't know what you're doing, do you? I'll set the range for you..");
goto SetRangeForUser;
}
else {
RangeMin = int.Parse(UserInputRangeMin);
}
Console.Write("Input your range maximum:");
string UserInputRangeMax = Console.ReadLine();
if (int.TryParse(UserInputRangeMax, out RangeMax) == false) {
Console.WriteLine("Hey! That's not a number! You don't know what you're doing, do you? I'll set the range for you..");
goto SetRangeForUser;
}
else {
RangeMax = int.Parse(UserInputRangeMax);
}
SetRangeForUser:
RangeMax = 10;
RangeMin = 1;
}
else {
RangeMax = 10;
RangeMin = 1;
}
//Generate the random number and declare variables to be used.
Random RandomClass = new Random();
int RandomNumber = RandomClass.Next(RangeMin, RangeMax);
int Guesses = 0;
int UserGuess = 0;
string UserGuessString = "tempstring";
//Ask user person for input
Guess:
Console.Write("Input your guess:");
UserGuessString = Console.ReadLine();
//Cheaters go here
if (UserGuessString == "just give me the answer") {
UserGuess = RandomNumber;
goto Win;
}
if (int.TryParse(UserGuessString, out UserGuess) == false) {
Console.WriteLine("Hey! That's not a number!");
goto Guess;
}
UserGuess = int.Parse(UserGuessString);
//Increase Guess Count
Guesses++;
//Check if user got answer right
Win:
if (UserGuess == RandomNumber) {
Console.WriteLine("CORRECT! The answer was {0}. This game took you {1} tries.", RandomNumber, Guesses);
}
else {
if (UserGuess > RandomNumber) {
Console.WriteLine("Incorrect! The number is lower than {1}! You have used {0} tries so far.", Guesses, UserGuess);
}
else {
Console.WriteLine("Incorrect! The number is higher than {1}! You have used {0} tries so far.", Guesses, UserGuess);
}
goto Guess;
}
}
}
}