Console.Write ("Digite a senha: ");
string senha = Console.ReadLine()!;
Console.Write ("Digite seu nível de acesso: ");
int nivelAcesso = int.Parse(Console.ReadLine()!);
if (senha == "42" && nivelAcesso >= 5) {
Console.WriteLine ("Acesso Liberado!");
}
else {
Console.WriteLine ("Acesso negado.");
}
Baseado nesse conceito, eu decidi criar outro programa com outros conceitos que eu já aprendi, para validar acesso a áreas específicas dentro de uma aeronave.
Dictionary <string, int> acessoUsuario = new Dictionary<string, int>();
acessoUsuario.Add("A7x9", 1);
acessoUsuario.Add("Qw12", 1);
acessoUsuario.Add("B14k", 2);
acessoUsuario.Add("User01", 2);
acessoUsuario.Add("Zp88", 3);
acessoUsuario.Add("Secure77", 3);
acessoUsuario.Add("Dev2026", 4);
acessoUsuario.Add("AdminX", 5);
acessoUsuario.Add("Root99", 6);
acessoUsuario.Add("MasterKey", 6);
void ValidandoEntradaSala(int nivelAcessoNecessario, int nivelAcessoUtilizado, string senhaUtilizada) {
if (nivelAcessoUtilizado >= nivelAcessoNecessario && acessoUsuario.ContainsKey(senhaUtilizada)) {
if (acessoUsuario[senhaUtilizada] == nivelAcessoUtilizado) {
Console.WriteLine ("Acesso autorizado.");
}
else {
Console.WriteLine ("Acesso negado.");
}
}
else {
Console.WriteLine ("Acesso negado.");
}
}
void mostrarInterface() {
Console.Clear();
Console.WriteLine ("==============================");
Console.WriteLine (" AERONAVE SALAS RESTRITAS ");
Console.WriteLine ("==============================");
Console.WriteLine ("1. Sala de Operações");
Console.WriteLine ("2. Sala de Controle");
Console.WriteLine ("3. Sala de Armas");
Console.WriteLine ("4. Sala de Tática");
}
int sala;
bool validou;
while (true) {
mostrarInterface();
Console.Write ("Selecione a sala que deseja acessar: ");
validou = int.TryParse(Console.ReadLine()!, out sala);
if (sala == 1 || sala == 2 || sala == 3 || sala == 4) {
validou = true;
if (validou) break;
}
}
if (validou) {
Console.Write ("Digite a senha: ");
string senhaUtilizada = Console.ReadLine()!;
Console.Write ("Digite seu nível de acesso: ");
int nivelAcessoUtilizado = int.Parse(Console.ReadLine()!);
switch (sala) {
case 1: ValidandoEntradaSala(5, nivelAcessoUtilizado, senhaUtilizada); break;
case 2: ValidandoEntradaSala(6, nivelAcessoUtilizado, senhaUtilizada); break;
case 3: ValidandoEntradaSala(3, nivelAcessoUtilizado, senhaUtilizada); break;
case 4: ValidandoEntradaSala(4, nivelAcessoUtilizado, senhaUtilizada); break;
}
}