I'm just learning c#, and I like to understand everything before I move on.
The problem I'm having is I need 2 Console.ReadLine(); to pause the console. If I just use 1, the program ends after the input. So why does it need 2 readline methods instead of? Any ideas?
Please note in my code, I've commented out 1 of the readline methods, the way I want my program to work but it doesn't. However removing the comments allows the program to work, but I don't understand why.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CoinFlip
{
class Program
{
static void Main(string[] args)
{
Random rng = new Random();
Console.WriteLine(@"
This program will allow you to guess heads or tails on a coin flip.
Please enter h for heads, or t for tails and press Enter: ");
char userGuess = (char)Console.Read();
int coin = rng.Next(0,2);
Console.WriteLine("Coin is {0}\n\n", coin);
if (coin == 0 && (userGuess == 'h' || userGuess == 'H'))
{
Console.WriteLine("It's heads! You win!");
}
else if (coin == 1 && (userGuess == 't' || userGuess == 'T'))
{
Console.WriteLine("It's tails! You win!");
}
else if (userGuess != 't' && userGuess != 'T' && userGuess != 'h' && userGuess != 'H')
{
Console.WriteLine("You didn't enter a valid letter");
}
else
{
if (coin == 0) { Console.WriteLine("You lose mofo. The coin was heads!"); }
if (coin == 1) { Console.WriteLine("You lose mofo. The coin was tails!"); }
}
Console.ReadLine();
//Console.ReadLine();
}
}
}