rojaum 0 Denunciar post Postado Setembro 26, 2006 Galera, só uma duvida eu posso postar aqui uma duvida sobre como trabalhar com ponteiros referente a estrutura de dados?vlw ^_^ Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Setembro 26, 2006 Se ele não se encaixa em nenhum dos outros fóruns de programação, pode postar sim... Compartilhar este post Link para o post Compartilhar em outros sites
rojaum 0 Denunciar post Postado Setembro 26, 2006 bem, tenho que criar um programa que implemente uma lista de alocação dinamica, acho que tipo um encadeamento, para armazenar uma lista de alunos contendo: nome, nota1, nota2, faltas de cada aluno; e que seja possivel inserir um aluno no inicio da lista; inserir um aluno no final da lista; inserir um aluno em uma posicao informada pelo usuario(qnd esta existir); apagar um aluno em uma posicao informada pelo usuario(qnd esta existir); apagar o primeiro aluno da lista; apagar o ultimo aluno da lista; mostrar todos os alunos cadastrados; bem, o que fiz até o momento: programa listadinamicatype apontador = ^cad_alunos; cad_alunos = record nomealuno : string; nota1, nota2 : real; faltas : integer; proximo : apontador; end;var aux, novo, inicio, fim, meio : apontador; continua : char; i, posicao : integer;begin inicio := nil; continua := 's'; i := 0; if continua = 's' then repeat begin new(novo); i := i+1; writeln('aluno: '); readln(novo^.nomealuno); writeln('nota 1: '); readln(novo^.nota1); writeln('nota 2: '); readln(novo^.nota2); writeln('faltas: '); readln(novo^.faltas); if inicio = nil then begin inicio := novo; fim := novo; end else begin fim^.proximo := novo; fim := novo; end; writeln('continua? s/n'); readln(continua); until (continua='n');writeln('cadastrar mais alunos? s/n');readln(continua);if continua = 's' then //aqui começaria pra acrescentar usuario ao meio da lista, ou seja, na posicao que o usuario informar, aqui me perco hehehe//aqui apenas listo a lista de meu alunos do inicio ao fimaux := inicio;i:=0;while aux <> nil do begin i:=i+1; writeln('alunos: '); writeln(aux^.nomealuno); aux := aux^.proximo; end;readln;readln;end; bem, se puderem ajudar..quanto a parte de inserir no inicio e no final, to tentando fazer aqui, acho que to no caminho, só estou perdido mesmo quanto a parte do inserir no meio da lista: pensei em algo + - assim: novo^.proximo := meio; meio^.proximo := novo; mas sei la..acho que nao funfa http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif vlw Compartilhar este post Link para o post Compartilhar em outros sites
rojaum 0 Denunciar post Postado Outubro 1, 2006 alguma luz? http://forum.imasters.com.br/public/style_emoticons/default/upset.gif Compartilhar este post Link para o post Compartilhar em outros sites