C++ - exercicio sobre arvores binarias - C/C#/C++ - Clube do Hardware
C++ - exercicio sobre arvores binarias
Por Alfredo Daniel Sousa Guede, 13 de maio de 2016 em C/C#/C++
Alfredo Daniel Sousa Guede 1
Boa noite. Tenho em mãos um exercício de uma unidade curricular sobre árvores binárias. Apesar de ser iniciante, penso que o exercício em si e de grande dificuldade. Procuro apenas algumas luzes, Já pesquisei de quase tudo mas não encontro o que pretendo.
"Suponha um programa que, através de uma árvore binária genérica, representa, de uma forma hierárquica, os diversos departamentos de uma dada empresa. Os dados de cada departamento são: designação, nº de pessoas que trabalham nesse departamento, volume de despesas e volume de ganhos.
Considere um ficheiro de texto <depts.txt>, que é constituído pelos dados referentes aos departamentos da empresa. Os dados de cada departamento ocupam uma linha do ficheiro e são constituídos pelos seguintes dados: designação (máximo 20 caracteres); número de pessoas (do tipo inteiro); ganhos (do tipo float); despesas (do tipo float). Todos os campos são separados por ponto e vírgula.
01 Desenvolva uma função/procedimento capaz de ler os dados do ficheiro para uma árvore binária genérica cujo campo de dados aponte para uma estrutura de dados composta que pense que seja adequada para a posterior manipulação dos mesmos.
02 Implemente uma função que apresente no ecrã todos os dados de um determinado departamento, cuja designação deve ser lida pelo teclado.
03 Implemente uma função que calcule, e apresente no ecrã, o apuro (ganhos - despesas) de cada departamento da empresa.
04 Implemente uma função que acrescente 1000€ às despesas de um determinado departamento cuja designação deve ser lida pelo teclado.
05 Implemente uma função que calcule, e apresente no ecrã, o apuro total da empresa.
06 Implemente uma função que calcule, e apresente no ecrã, a designação do departamento com o maior volume de ganhos.
07 Desenvolva, no programa principal, um sistema de menu que permita gerir todas as opções solicitadas na alíneas anteriores. "
O ficheiro depts.txt contem o nome dos departamentos por exemplo: DepartamenoA;23;1200;1599
Agradeço desde já a iniciativa de lerem e tentarem ajudar.
Bom Alfredo, podemos começar com "onde está a sua dúvida?", pelo que li, seu programa tem que ler um arquivo, buscando informações de acordo com a entrada que for fornecida. Mas não vi nada complexo até agora, o programa deve conter uma lista de opções iniciais onde se deve optar por qual função vai ser executada e apresentar os valores ou saídas a partir da informação de entrada, provavelmente apresentar novamente a lista de opções e escolher outras ações até que o usuário solicite encerrar o aplicativo... a assim por diante.
Alfredo Daniel Sousa Guede
Olá, Muito obrigado pela resposta. O meu principal problema é em criar o código da árvore. Apesar de para a resolução deste exercício ter-nos sido dado outro exercício idêntico, é-me muito difícil criar a árvore.
Desculpe pela minha falta de informação Alfredo, mas não entendi bem o que é a árvore binária, poderia explicar-me o termo?
Apenas tivemos duas aulas sobre isso. A arvore binaria ou Btree é o conjunto de informação organizada e recursiva. é composta por dados nos seus nós. exemplo: