I am a beginner in C# coding, and I was trying to compare two int
variables:
void CompareNumber() { int oneNumber; int secondNumber; if (oneNumber > secondNumber) { DoSomething(); } else if (oneNumber < secondnumber) { DoSomethingElse(); } else if (oneNumber == secondnumber) { DoSomethingDifferent(); } }
While this does work, it looks kinda messy, especially because I compare variables in this manner many times. Is there a more concise way of doing this, making it look neater? (Except for omitting the curly brackets)
Here is my actual code for a simple game that thinks of a number, and you need to guess what it said:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GuessName
{
class Program
{
static void Main(string[] args)
{
int previousNumber = 0;
AskNumber(previousNumber);
}
static void AskNumber(int previousNumber)
{
Console.Clear();
int numberTyped;
int randomNumber = new Random().Next(1, 11);
while (previousNumber == randomNumber)
randomNumber = new Random().Next(1, 11);
Console.WriteLine("I am thinking of a number between 1 and 10. What do you think it is?");
if (int.TryParse(Console.ReadLine(), out numberTyped) == true)
CheckNumber(numberTyped, randomNumber);
else
InvalidNumber();
}
static void CheckNumber(int numberTyped, int randomNumber)
{
if (numberTyped < 0 || numberTyped > 10)
{
InvalidNumber();
}
else if (numberTyped > randomNumber)
{
Console.Clear();
Console.WriteLine("Sorry, but your number is bigger than what I thought");
Console.WriteLine("Try again, just type what you think:");
}
else if (numberTyped < randomNumber)
{
Console.Clear();
Console.WriteLine("Sorry, but your number is smaller than what I thought");
Console.WriteLine("Try again, just type what you think:");
}
else
{
Console.Clear();
WonGame(randomNumber);
}
if (int.TryParse(Console.ReadLine(), out numberTyped) == true)
CheckNumber(numberTyped, randomNumber);
else
InvalidNumber();
}
static void WonGame(int randomNumber)
{
Console.WriteLine("Great job, You did it!");
Console.WriteLine("Would you like to try again? (y) or would you like to quit? (n)");
string wantToPlay = Console.ReadLine();
if (wantToPlay == "y")
AskNumber(randomNumber);
else
Environment.Exit(0);
}
static void InvalidNumber()
{
Console.Clear();
Console.WriteLine("Your number is invalid. Would you like to try again? (y)");
Console.WriteLine("Or would you like to quit? (n)");
string wantToPlay = Console.ReadLine();
if (wantToPlay == "y")
AskNumber(0);
else
Environment.Exit(0);
}
}
}