Ir ao conteúdo
  • Cadastre-se

candango mineiro

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Reputação

0
  1. Então eu criei uma base, mas algumas opções como inserir em ordem alfabética e a busca não consegui implementar, se puderem estar me auxiliando. program ListaTelefonica; uses crt; const inicioLista = 1; maxTam = 1000; type TipoApontador = integer; TipoTelefone = record cod_area: integer; num_tel: string; end; TipoItem = record nome: string; sobrenome: string; telefone: TipoTelefone; end; TipoLista = record item: array [1..MAXTAM] of TipoItem; primeiro: TipoApontador; ultimo: TipoApontador; end; procedure FLVazia (var Lista: tipoLista); begin Lista.primeiro:= inicioLista; Lista.ultimo:= Lista.primeiro; end; function Vazia (var Lista: tipoLista): boolean; begin vazia := Lista.primeiro = Lista.ultimo; end; procedure Insere(var Lista:TipoLista; x:TipoItem); begin if (lista.ultimo > maxTam) then begin writeln ('A lista esta cheia!'); writeln; writeln ('Não é possivel inserir mais cadastros!'); end else begin end; procedure Retira(p:TipoApontador; var Lista:TipoLista; var Item:TipoItem); var aux : integer; begin if (Vazia(lista))or (p>=lista.Ultimo) then writeln ('Erro: Posicao nao existe!') else begin item:=lista.Item[p]; lista.ultimo:= lista.Ultimo - 1; writeln; writeln ('Chave removida com sucesso! Tecle ENTER para continuar...'); for aux := p to lista.Ultimo-1 do lista.Item[aux]:= lista.Item [aux + 1]; end; end; procedure Imprime(var Lista:TipoLista); var aux: integer; begin for aux:= lista.Primeiro to lista.Ultimo - 1 do begin writeln ('Usuario: ', aux); writeln ('Nome: ', lista.Item[aux].nome); writeln ('Sobrenome: ', lista.Item[aux].sobrenome); writeln ('Codigo de area: ', lista.Item[aux].telefone.cod_area); writeln ('Numero de Telefone: ',lista.Item[aux].telefone.num_tel); end; end; function Busca(nome:string; sobrenome:string; Lista:TipoLista):TipoApontador; i: integer; begin i:=1; while (lista.item[i].nome <> nome) and (i < lista.Ultimo) do begin i:=i +1; begin Busca:=i; end end; end end end; {alterar telefone} procedure sair; begin clrscr; writeln ('Obrigado pela preferencia!Volte Sempre!'); end; procedure Menu( ); begin writeln('|---------------------|'); writeln('|--------MENU---------|'); writeln('| 1- Inserir |'); writeln('| 2- Retirar |'); writeln('| 3- Imprimir |'); writeln('| 4- Buscar |'); writeln('| 5- Alterar Telefone |'); writeln('| 0- Sair |'); writeln('|---------------------|'); write(' Digite a opcao desejada: '); end; var opcao:integer; p: tipoApontador; lista: TipoLista; item: TipoItem; telefone: TipoTelefone; nome,sobrenome: string; Begin opcao:= -1; FLVazia(lista); while (opcao <>0) do begin clrscr; menu( ); readln (opcao); if (opcao = 1) then begin clrscr; writeln ('Digite os dados do usuario a ser inserido na lisa telefonica: '); writeln ('Nome: '); readln (item.nome); writeln ('Sobrenome: '); readln (item.sobrenome); writeln ('Codigo de area: '); readln (item.telefone.cod_area); writeln ('Numero Telefone: '); readln (item.telefone.num_tel); Insere(lista, item); writeln; writeln ('Usuario inserido com sucesso! Tecle ENTER para continuar...'); readln; end else if (opcao = 2) then begin clrscr; writeln ('Digite a posicao do usuario a ser removido: '); readln (p); Retira (p,lista, item); readln; end else if (opcao = 3) then begin clrscr; Imprime (lista); writeln; writeln ('Tecle ENTER para continuar...'); readln; end else if (opcao = 4) then begin clrscr; writeln ('Digite os dados do usuario a ser buscado na lista'); write ('Nome: '); readln (nome); write ('Sobrenome: '); readln (sobrenome); p:= Buscar(nome, sobrenome, lista); if p <> (lista.Ultimo) then writeln ('A posicao do usuario buscado na lista eh: ',p) else writeln ('ERRO...O usuario buscado nao se encontra cadastrado na lista!'); writeln; writeln ('Tecle ENTER para continuar...'); readln; end else if (opcao = 5) then begin clrscr; writeln ('Digite os dados do usuario a ser alterado na lista'); write ('Nome: '); readln (nome); write ('Sobrenome: '); readln (sobrenome); end else} if (opcao = 0) then begin Sair; end else if (opcao <> 0)then begin clrscr; writeln ('Opcao inexistente. Tecle ENTER para continuar...'); readln; end; end; end.
  2. Bom dia, Estou precisando fazer um trabalho sobre uma lista telefônica, nessa lista necessito fazer um procedure para ordenar de em ordem alfabética por nome e sobrenome. Segundo o enunciado abaixo: "Implemente o procedimento para inserir um item na Lista. Este procedimento deverá inserir um item na Lista de forma ordenada pelo nome e depois sobrenome da pessoa. Protótipo: procedure Insere(var Lista:TipoLista; x:TipoItem);" Se alguém puder me auxiliar com esse pedaço de código, porque já pesquisei e não achei nada. Obrigado

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!