static void Main(string[] args)
        {
            Aluno[] alunos = new Aluno[100];
            Sala[]  salas  = new Sala[10];

            int  alunosCadastrados = 0;
            int  salasCadastradas  = 0;
            bool querSair          = true;

            //List<Aluno> alunosMatriculados = new List<Aluno>();
            //List<Sala> salasExistentes = new List<Sala>();
            string fileName = "ListaAlunosSalas.csv";
            string FilePath = ".\\" + fileName;

            string fileName2 = "ListaSalas.csv";
            string FilePath2 = ".\\" + fileName2;

            //AlunosMatriculados = InitList (FilePath, alunos);
            //PROBLEMA RESOLVIDO: Se o aluno não for alocado, erro de execução, pois numSala recebe string convertida para int, tenta ler string e não funciona.

            //Lista de Alunos:
            try {
                string[] lista = File.ReadAllLines(@FilePath);
                int      count = 0;
                foreach (string linha in lista)
                {
                    string[] itens   = linha.Split(",");
                    string   nome    = itens[0].Replace("\"", "");
                    int      numSala = Convert.ToInt32(itens[1].Replace("\"", ""));
                    DateTime data    = DateTime.Parse(itens[2].Replace("\"", ""));

                    alunos[count] = new Aluno(nome, data);
                    alunos[count].AlunoNumSala(numSala);

                    //alunosMatriculados.Add(alunos[count]);

                    count++;
                    alunosCadastrados++;
                }
            } catch (IOException erro) {
                System.Console.WriteLine("Erro ao acessar arquivo.");
                System.Console.WriteLine(erro.Message);
            }

            //Lista de Salas:
            try {
                string[] lista = File.ReadAllLines(@FilePath2);
                int      count = 0;
                foreach (string linha in lista)
                {
                    string[] itens      = linha.Split(",");
                    int      numSala    = Convert.ToInt32(itens[0].Replace("\"", ""));
                    int      capacidade = Convert.ToInt32(itens[1].Replace("\"", ""));

                    salas[count] = new Sala(numSala, capacidade);

                    string listaAlunosConcat = itens[2].Replace("\"", "");
                    //PROBLEMA RESOLVIDO: alunosCount incrementava a cada item da listaAlunos, fazendo com que o próximo aluno da sala fosse alocado na sala seguinte consecutivamente.
                    if (listaAlunosConcat != "Sala vazia.")
                    {
                        string[] listaAlunos = listaAlunosConcat.Split("   ");
                        //int alunosCount = 0;
                        foreach (string item in listaAlunos)
                        {
                            if (item != "")
                            {
                                item.Replace("   ", "");
                                if (salas[count] != null)
                                {
                                    salas[count].AlocarAluno(item);
                                    //sala[alunosCount].AlocarAluno(item);
                                }
                            }
                            //alunosCount++;
                        }
                    }

                    int qtdAlunos = Convert.ToInt32(itens[3].Replace("\"", ""));

                    count++;
                    salasCadastradas++;
                }
            } catch (IOException erro) {
                System.Console.WriteLine("Erro ao acessar arquivo.");
                System.Console.WriteLine(erro.Message);
            }

            do
            {
                Console.Clear();

                System.Console.WriteLine("|__Sistema de cadastro de alunos Senaizinho__|");
                System.Console.WriteLine("Digite alguma opção abaixo:");
                System.Console.WriteLine("1 - Cadastrar Aluno;");
                System.Console.WriteLine("2 - Cadastrar Sala;");
                System.Console.WriteLine("3 - Alocar Aluno;");
                System.Console.WriteLine("4 - Remover Aluno;");
                System.Console.WriteLine("5 - Verificar Salas;");
                System.Console.WriteLine("6 - Verificar Alunos;");
                System.Console.WriteLine("0 - Sair");
                string opcao = Console.ReadLine();
                switch (opcao)
                {
                case "1":
                    alunosCadastrados = CadastrarAluno(alunos, alunosCadastrados);
                    break;

                case "2":
                    salasCadastradas = CadastrarSala(salas, salasCadastradas);
                    break;

                case "3":
                    AlocarAluno(alunos, salas);      //enviando informações por parametro.
                    break;

                case "4":

                    RemoverAluno(salas, alunos);
                    break;

                case "5":
                    VerificarSalas(salas);
                    break;

                case "6":
                    VerificarAlunos(alunos);
                    break;

                case "0":
                    System.Console.WriteLine("Finalizando programa.");
                    Salvar(alunos, salas);
                    querSair = false;
                    break;

                default:
                    System.Console.WriteLine("Comando Inválido.");
                    break;
                }
            } while (querSair);
        } //PROBLEMAS com cadastro de aluno e sala
        public static int CadastrarSala(Sala[] salas, int salasCadastradas)
        {
            int  limiteSalas  = 10;
            int  capacidade   = 0;
            int  numSala      = 0;
            bool salaJaExiste = false;

            Console.Clear();

            if (salasCadastradas < limiteSalas)
            {
                do
                {
                    do
                    {
                        System.Console.Write("Entre com o número da sala à ser aberta: ");
                        numSala = Convert.ToInt32(Console.ReadLine());
                        if (numSala < 1 || numSala > 10)
                        {
                            System.Console.WriteLine("Digite um número de 1 a 10.");
                            Console.ReadLine();
                        }
                    } while (numSala < 1 || numSala > 10);
                    if (salas[numSala - 1] == null)
                    {
                        salasCadastradas += 1;
                        salaJaExiste      = false;
                    }
                    else
                    {
                        System.Console.WriteLine("Esta sala já existe.");
                        salaJaExiste = true;
                        Console.ReadLine();
                    }
                } while (salaJaExiste);

                System.Console.Write("Entre com a capacidade máxima da sala: ");
                do
                {
                    capacidade = Convert.ToInt32(Console.ReadLine());

                    if (capacidade < 0 || capacidade > 10)
                    {
                        System.Console.WriteLine("A capacidade máxima da sala é 10, digite um valor válido.");
                    }
                } while (capacidade < 0 || capacidade > 10);

                Sala sala = new Sala(numSala, capacidade);
                salas[numSala - 1] = sala;

                System.Console.WriteLine("O aluno foi cadastrado com sucesso na escola.");
                Console.ReadLine();
            }
            else
            {
                System.Console.WriteLine("Não é possível o cadastro de uma nova SALA, a escola atingiu sua capacidade máxima.");
                Console.ReadLine();
            }

            return(salasCadastradas);
        }
Exemple #3
0
        public void AlocarAluno()
        {
            System.Console.WriteLine("DIGITE O NOME DO ALUNO A SER ALOCADO: ");
            string nomeAlunoDigitado = Console.ReadLine();

            System.Console.WriteLine("DIGITE O NÚMERO DA SALA: ");
            int numeroSalaDigitado = int.Parse(Console.ReadLine());

            bool alunoExiste = false;
            bool salaExiste  = false;


            //int contadorAluno = 0;
            int contadorSala = 0;

            //int indexAluno = 0;
            int indexSala = 0;

            foreach (var aluno in this.Alunos)
            {
                if (nomeAlunoDigitado == aluno.Nome)
                {
                    aluno.NumeroSala = numeroSalaDigitado;
                    alunoExiste      = true;

                    //indexAluno = contadorAluno;
                }
                //contadorAluno++;
            }

            foreach (var sala in this.Salas)
            {
                if (numeroSalaDigitado == sala.NumeroSala)
                {
                    salaExiste = true;
                    indexSala  = contadorSala;
                }
                contadorSala++;
            }

            if (alunoExiste == true && salaExiste == true)
            {
                Sala sala       = new Sala(numeroSalaDigitado, 10);
                var  alunosSala = sala.AlunosSala;

                string retornoAlocar = sala.AlocarAluno(nomeAlunoDigitado);
                this.Salas.RemoveAt(indexSala);
                this.Salas.Insert(indexSala, sala);

                System.Console.WriteLine(retornoAlocar);
            }
            else if (alunoExiste == false && salaExiste == false)
            {
                System.Console.WriteLine("ALUNO NÃO EXISTE");
                System.Console.WriteLine("SALA NÃO EXISTE");
            }
            else if (alunoExiste == true && salaExiste == false)
            {
                System.Console.WriteLine("ALUNO EXISTE");
                System.Console.WriteLine("SALA NÃO EXISTE");
            }
            else if (alunoExiste == false && salaExiste == true)
            {
                System.Console.WriteLine("ALUNO NÃO EXISTE");
                System.Console.WriteLine("SALA EXISTE");
            }
        }
Exemple #4
0
        static void Main(string[] args)
        {
            Aluno[] alunos            = new Aluno[5];
            int     alunosCadastrados = 0;

            Sala[] salas            = new Sala[10];
            int    salasCadastradas = 0;

            string opcao;

            do
            {
                System.Console.WriteLine("Bem vindo, o que deseja fazer? ");
                System.Console.WriteLine("1 - Cadastrar alunos");
                System.Console.WriteLine("2 - Cadastrar sala ");
                System.Console.WriteLine("3 - Alocar aluno");
                System.Console.WriteLine("4 - Remover aluno");
                System.Console.WriteLine("5 - Verificar salas");
                System.Console.WriteLine("6 - Verificar alunos");
                System.Console.WriteLine("0 - Sair");

                opcao = Console.ReadLine();

                Aluno aluno = new Aluno();
                Sala  sala  = new Sala();

                switch (opcao)
                {
                case "1":
                    Console.Clear();

                    System.Console.WriteLine("Nome do aluno: ");
                    aluno.nome = Console.ReadLine();

                    System.Console.WriteLine("Data de nascimento: ");
                    aluno.dataNasc = DateTime.Parse(Console.ReadLine());

                    System.Console.WriteLine("Curso: ");
                    aluno.curso = Console.ReadLine();


                    alunos[alunosCadastrados] = aluno;
                    alunosCadastrados++;

                    break;

                case "2":
                    Console.Clear();

                    System.Console.WriteLine("Número da sala: ");
                    sala.numeroSala = int.Parse(Console.ReadLine());

                    System.Console.WriteLine($"Capacidade atual: {alunosCadastrados} ");
                    System.Console.WriteLine("Capacidade máxima: 10");
                    salas[salasCadastradas] = sala;
                    salasCadastradas++;

                    break;

                case "3":
                    System.Console.WriteLine(" Em que sala deseja colocar o aluno? ");
                    int salaAlocar = int.Parse(Console.ReadLine());
                    foreach (var item in salas)
                    {
                    }



                    break;

                case "4":
                    System.Console.WriteLine("Qual aluno deseja remover? ");
                    Console.ReadLine();
                    break;

                case "5":
                    foreach (var item in salas)
                    {
                        if (item != null)
                        {
                            Console.Clear();

                            System.Console.WriteLine("-----------------------------------------");
                            System.Console.WriteLine($"Número da sala: {item.numeroSala} ");
                            System.Console.WriteLine($"Capacidade total: {item.capacidadeTotal}");
                            System.Console.WriteLine("-----------------------------------------");
                        }
                    }
                    break;

                case "6":
                    foreach (var item in alunos)
                    {
                        if (item != null)
                        {
                            Console.Clear();
                            System.Console.WriteLine("-----------------------------------------");
                            System.Console.WriteLine($"Nome do aluno: {item.nome}");
                            System.Console.WriteLine($"Curso: {item.curso}");
                            System.Console.WriteLine($"Sala: {item.numeroSala}");
                            System.Console.WriteLine("-----------------------------------------");
                        }
                    }
                    break;
                }
            } while (opcao != "0");
        }
Exemple #5
0
        static void Main(string[] args)
        {
            bool continuar = true;
            int  i         = 0;
            int  cont      = 0;

            Aluno[] alunos      = new Aluno[4];
            Sala[]  salas       = new Sala[1];
            int     cadastrados = 0;

            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("----- Bem vindo à Secretaria Virtual -----");
            Console.ResetColor();

            while (continuar)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                System.Console.WriteLine("1 - Cadastrar Aluno");
                Console.ForegroundColor = ConsoleColor.Yellow;
                System.Console.WriteLine("2 - Cadastrar Sala");
                Console.ForegroundColor = ConsoleColor.Green;
                System.Console.WriteLine("3 - Alocar Aluno");
                Console.ForegroundColor = ConsoleColor.Blue;
                System.Console.WriteLine("4 - Remover Aluno");
                Console.ForegroundColor = ConsoleColor.DarkBlue;
                System.Console.WriteLine("5 - Verificar Salas");
                Console.ForegroundColor = ConsoleColor.Magenta;
                System.Console.WriteLine("6 - Verificar Alunos");
                Console.ForegroundColor = ConsoleColor.Red;
                System.Console.WriteLine("0 - Sair");
                Console.ResetColor();

                string resposta = Console.ReadLine();

                switch (resposta)
                {
                case "1":
                    if (i < 4)
                    {
                        Aluno aluno = new Aluno();
                        System.Console.WriteLine("Digite o nome do aluno a ser cadastrado");
                        aluno.nome = Console.ReadLine();
                        System.Console.WriteLine("Insira a data de nascimento do aluno");
                        aluno.dataNascimento = System.DateTime.Parse(Console.ReadLine());
                        System.Console.WriteLine("Digite o curso do aluno");
                        aluno.Curso = Console.ReadLine();
                        System.Console.WriteLine("Digite o número da sala do aluno");
                        aluno.numeroSala        = int.Parse(Console.ReadLine());
                        Console.ForegroundColor = ConsoleColor.Green;
                        System.Console.WriteLine("----- Aluno cadastrado -----");
                        Console.ResetColor();
                        alunos[cadastrados] = aluno;
                        cadastrados        += 1;
                        i++;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        System.Console.WriteLine("----- Número máximo de alunos cadastrados atingido -----");
                        Console.ResetColor();
                    }
                    break;

                case "2":
                    if (cont < 1)
                    {
                        Sala sala1 = new Sala();
                        System.Console.WriteLine("Digite o número da sala a ser cadastrada");
                        sala1.numeroSala = int.Parse(Console.ReadLine());
                        System.Console.WriteLine("Digite a capacidade total da sala");
                        sala1.capacidadeTotal   = int.Parse(Console.ReadLine());
                        Console.ForegroundColor = ConsoleColor.Green;
                        System.Console.WriteLine("----- Sala cadastrada -----");
                        Console.ResetColor();
                        salas[cont] = sala1;
                        sala1.Alocar(alunos[i].nome);
                        cont += 1;
                        cont++;
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        System.Console.WriteLine("----- Número máximo de salas cadastradas -----");
                        Console.ResetColor();
                    }
                    break;

                case "3":
                    System.Console.WriteLine("Digite o nome do aluno a ser alocado");
                    Console.ReadLine();

                    break;

                case "4":
                    System.Console.WriteLine("Digite o nome do aluno a ser removido");
                    Console.ReadLine();

                    break;

                case "5":
                    System.Console.WriteLine("Essas são as salas");
                    for (int a = 0; a < 1; a++)
                    {
                        System.Console.WriteLine("----------------------------------------");
                        System.Console.WriteLine("Número da sala: " + salas[a].numeroSala);
                        System.Console.WriteLine("Capacidade total: " + salas[a].capacidadeTotal);
                        System.Console.WriteLine("----------------------------------------");
                    }
                    break;

                case "6":
                    System.Console.WriteLine("Esses são os alunos");
                    for (int a = 0; a < 4; a++)
                    {
                        System.Console.WriteLine(alunos[a].nome);
                    }
                    break;

                case "0":
                    System.Console.WriteLine("Obrigado por acessar!!!");
                    continuar = false;
                    break;

                default:
                    Console.ForegroundColor = ConsoleColor.Red;
                    System.Console.WriteLine("----- Digite um número válido -----");
                    Console.ResetColor();
                    break;
                }
            }
        }