Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
jerfeson santos

Arvore solução

Recommended Posts

Pessoal gostaria de uma ajuda para formulação de uma solução de uma em árvore. Se alguém tiver o código parecido fico grato.

Uma escola de informática possui funcionários em diversos níveis. Esta empresa decidiu desenvolver um programa de consulta onde pudesse pesquisar um funcionário e saber qual a sua função e nível. Elabore um programa utilizando a estrutura árvore para esta pesquisa.

a) Para este programa deve ser usada a seguinte árvore abaixo descrita, onde:

Código Função Funcionário

A Presidente da Empresa Jaime

B Diretor Pedagógico Ana

C Diretor Administrativo – Financeiro Rose

D Apoio Educacional Paulo

E Secretária Escolar Maria

F Tesoureiro Vitor

G Coordenador de Pessoal Carla

H Coordenador Pedagógico Marta

I Auxiliar de Escritório Sandro

J Instrutor Marcos

K Estagiário Jonas

B) O programa deve receber o nome do funcionário e pesquisar na árvore binária seu código. Uma vez com o código o programa deve imprimir o código, nome do funcionário, função e nível hierárquico.

c) Para que isto seja possível, cada raiz da árvore deve possuir um campo para o nome do funcionário e outro campo para o código.

d) Crie uma rotina para imprimir todos os registros da árvore em ordem alfabética de nomes.

e) É importante criar um menu para que o usuário possa decidir entre as duas opções:

- busca e impressão de um registro

- impressão de todos os registros

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • O que já foi feito galera...gostaria de saber como ficaria o programa principal...

    unit Uarvore;

    interface

    uses crt;

    type

    Dados = string;

    ArvB = ^Nodo;

    Nodo = Record

    esq : ArvB;

    dir : ArvB;

    obj : Dados;

    end;

    Dados = Record

    nome : string;

    codigo : char;

    funcao : string;

    end;

    var

    T : ArvB;

    op : integer;

    cod : char;

    nomef, func : string;

    //Prototipos das Rotinas

    procedure Menu;

    procedure TIns (var T:ArvB; cod : char; funcao, nomef: string);

    implementation

    Procedure TIns (var T:ArvB; cod : char; funcao, nomef: string);

    var

    cod:obj;

    begin

    if T=nil then

    begin

    new(T);

    T^.obj.codigo:= cod;

    T^.obj.nome:= nomef;

    T^.obj.funcao:= func;

    T^.esq:= nil;

    T^.dir:= nil;

    end

    else

    if (cod < T^.obj.codigo) then

    TIns(T^.esq, cod, funcao, nomef)

    else

    TIns(T^.dir, cod, funcao, nomef);

    end;

    //Rotina do menu

    Procedure Menu;

    begin

    clrscr;

    textcolor(white);

    writeln(' Escola de Informatica ');

    writeln;

    Writeln( '< 0 > Inserir');

    Writeln( '< 1 > Buscar');

    Writeln( '< 2 > Listar');

    Writeln( '< 3 > Sair');

    writeln;

    write(' Digite sua opcao : ');

    readln(op);

    writeln;

    while (op <> 0) and (op <> 1) and (op <> 2) and (op <> 3) do

    begin

    writeln(' Opcao Invalida!!');

    writeln;

    write(' Digite sua opcao : ');

    readln(op);

    writeln;

    writeln;

    end;

    writeln;

    writeln;

    if op = 0 then

    begin

    write('Codigo do Funcionario....: ');

    readln(cod);

    cod := upcase(cod);

    write('Funcao.....: ');

    readln(func);

    func := upcase(func);

    write('Nome do Funcionario.: ');

    readln(nomef);

    nomef := upcase(nomef);

    TIns(T, cod, func, nomef);

    end;

    begin

    end.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Pessoal,

    Valeu pelas visualizações sem respostas. Conseguir implementa.

    hehehhehhehe

    Para você vê em que nível já chegamos!!! rs

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×