Fala galera, até consegui aqui uma resolução com um bocado de pesquisa e ajuda externa, mas preciso entender melhor alguns pontos, pois usei no código mas não sei o fundamento, o porquê de ser usado.
Eu separei o código em funções e fui chamando de acordo a escolha do usuário, se possível, me direcione dicas para que fique um código "certo".
using System;
class Program
{
static void Main(string[] args)
{
Random random = new Random();
int aleatorio = random.Next(1, 101);
int tentativas = 0;
int palpite;
Menu();
void Menu()
{
Console.WriteLine(@"
░░█ █▀█ █▀▀ █▀█ █▀▄ █▀█ █▀█ ▄▀█ █░░ █▀█ █ ▀█▀ █▀▀
█▄█ █▄█ █▄█ █▄█ █▄▀ █▄█ █▀▀ █▀█ █▄▄ █▀▀ █ ░█░ ██▄
");
Console.WriteLine("\nSeja bem vindo!");
Console.WriteLine("Selecione uma das opções abaixo ...");
Console.WriteLine();
Console.WriteLine("|---------------|");
Console.WriteLine("|(1) Para JOGAR |");
Console.WriteLine("|(2) Para SAIR |");
Console.WriteLine("|---------------|");
int opcaoMenu = int.Parse(Console.ReadLine()!);
if (opcaoMenu == 1)
{
Jogo();
}
else if (opcaoMenu == 2)
{
Sair();
}
else
{
Console.Clear();
Menu();
}
}
void Jogo()
{
Console.WriteLine("Tente adivinhar um número entre 1 e 100.");
do
{
Console.Write("Digite o seu palpite: ");
palpite = Convert.ToInt32(Console.ReadLine());
tentativas++;
switch (Math.Sign(palpite - aleatorio))
{
case -1:
Console.WriteLine("O número que você digitou é MENOR que o número aleatório.");
break;
case 1:
Console.WriteLine("O número que você digitou é MAIOR que o número aleatório.");
break;
default:
Console.WriteLine($"Parabéns você acertou o número em {tentativas} tentativas(s).");
break;
}
} while (palpite != aleatorio);
Console.WriteLine("O jogo acabou!");
}
void Sair()
{
Console.WriteLine("O jogo foi encerrado pelo usuário!");
}
}
}
Não sei o que siginifica e nem quando devo usar:
using System
class Program
Math.Sign