Agenda em pascal
|
26-01-2011, 23:42
Mensagem: #1
|
|||
|
|||
Agenda em pascal
Boas pessoal!
Tou a fazer um projecto para a escola e nao estou a conseguir concluir! o meu projecto é uma agenda em pascal na qual guarda os registos em files(ficheiros). ja consegui por files na parte de adicionar um novo contacto mas ele nao me esta a guardar qualquer valor no ficheiro. Preciso de ajuda pff urgentemente tou desesperado para acabar isto e nao estou a conseguir. preciso tbem dos files nao restantes opcoes da agenda Obrigado. o codigo que tenho ate ao momento e o seguinte: program projecto_lp; uses crt; type agenda= RECORD nome: string [30]; telefones: record tel: string[8]; casa: string[8]; trab: string[8]; end; morada: string[20]; e_mail: string[20]; end; var telefone,tmp:file of AGENDA; menu: integer; i,j,tot : integer; nome2, xs: string; regaux,reg:agenda; enc:boolean; nome: string [30]; procedure init; begin Assign(telefone,'G:\plp\agenda.txt'); Assign(tmp,'G:\plp\agenda.tmp'); {$I-} Reset(telefone); {$I+} if IOResult <>0 then begin rewrite(telefone); end ; close(telefone); end; begin init; textbackground(white); textcolor(black); Clrscr; i := 1; repeat Clrscr; writeln('================================================================================'); writeln; writeln(' Agenda telefonica do Meu telemovel '); writeln; writeln('================================================================================'); writeln; writeln('Escolha uma das opcoes abaixo'); writeln; writeln('1 - Adicionar contacto.'); writeln('2 - Mostrar Todos Contactos.'); writeln('3 - Ordenar contactos.'); writeln('4 - Pesquisar contacto.'); writeln('5 - Alterar contacto.'); writeln('6 - Remover contacto.'); writeln('7 - Sair.'); writeln; write('Opcao desejada: '); readln(menu); writeln; case menu of 1 : begin clrscr; writeln('Novo Contacto'); writeln('---------------------------------'); writeln; write('Nome: '); readln(nome); reset(telefone); while not eof(telefone) and not(enc) do begin read(telefone,regaux); if (regaux.nome=nome) then enc:=true; end; if(enc)then writeln('registo ja se encontra efectuado') else begin write('telemovel : '); readln(regaux.telefones.tel); write('telefone casa: '); readln(regaux.telefones.casa); write('Trabalho: '); readln(regaux.telefones.trab); write('morada: '); readln(regaux.morada); write('E-mail: '); readln(regaux.e_mail); writeln; end; i := i + 1; end; (* 2 : begin clrscr; writeln('Contactos'); writeln('---------------------------------'); tot := 0; for j := 1 to 20 do begin if (regaux.nome <> '') then begin writeln('Nome: ', regaux.nome); writeln('telemovel: ',regaux.telefones.tel); writeln('telefone casa: ',regaux.telefones.casa); writeln('Trabalho: ',regaux.telefones.trab); writeln('Morada: ',regaux.morada); writeln('E_mail: ',regaux.e_mail); writeln('---------------------------------'); tot := tot + 1; readkey; end; end; writeln('total de contactos:',tot); end; 3 : begin for j := 1 to 19 do begin if (regaux.nome > regaux.nome) then begin xs := regaux.nome; regaux.nome := dados[j+1].nome; dados[j+1].nome := xs; xs := regaux.telefones.tel; regaux.telefones.tel := dados[j+1].telefones.tel; dados[j+1].telefones.tel := xs; xs := regaux.telefones.casa; regaux.telefones.casa := dados[j+1].telefones.casa; dados[j+1].telefones.casa := xs; xs := regaux.telefones.trab; regaux.telefones.trab := dados[j+1].telefones.trab; dados[j+1].telefones.trab := xs; xs := regaux.morada; regaux.morada := dados[j+1].morada; dados[j+1].morada:= xs; xs := regaux.e_mail; regaux.e_mail := dados[j+1].e_mail; dados[j+1].e_mail := xs; end; end; clrscr; writeln('DADOS ORGANIZADOS COM SUCESSO!'); readkey; end; 4 : begin clrscr; Write('Qual o nome: '); readln(nome2); for j := 1 to 20 do Begin if nome2 = regaux.nome then Begin writeln('---------------------------------'); writeln('Nome: ', regaux.nome); writeln('telemovel: ',regaux.telefones.tel); writeln('Telefone Casa: ',regaux.telefones.casa); writeln('Trabalho: ',regaux.telefones.trab); writeln('Morada: ',regaux.morada); writeln('E_mail: ',regaux.e_mail); Readkey; End; end; Readkey; end; 5 : begin clrscr; Write('qual o nome: '); readln(nome2); for j := 1 to 20 do Begin if (nome2 = regaux.nome) then Begin writeln('---------------------------------'); write('Nome [', regaux.nome, ']: '); readln(regaux.nome); write('telemovel [', regaux.telefones.tel,']: '); readln(regaux.telefones.tel); write('Telefone Casa [', regaux.telefones.casa, ']: '); readln(regaux.telefones.casa); write('Trabalho [', regaux.telefones.trab, ']: '); readln(regaux.telefones.trab); write('morada [', regaux.morada, ']: '); readln(regaux.morada); write('E_mail [', regaux.e_mail, ']: '); readln(regaux.e_mail); Readkey; End; end; Readkey; end; 6 : begin clrscr; Write('qual o nome: '); readln(nome2); for j := 1 to 20 do Begin if nome2 = regaux.nome then Begin writeln('---------------------------------'); regaux.nome := ''; regaux.telefones.tel := ''; regaux.telefones.casa := ''; regaux.telefones.trab := ''; regaux.morada := ''; regaux.e_mail := ''; writeln('CONTATO DELETADO!'); Readkey; End; end; Readkey; end; End;*) end; Until (MENU = 7); readkey; end. Obrigado aguardo pela ajuda! |
|||
« Mais Antigo | Mais Recente »
|
Mensagem neste Tópico |
Agenda em pascal - iceball - 26-01-2011 23:42
RE: Agenda em pascal - Bruno Bernardino - 27-01-2011, 00:18
RE: Agenda em pascal - iceball - 27-01-2011, 23:32
RE: Agenda em pascal - Elias_REC - 28-01-2011, 06:33
RE: Agenda em pascal - iceball - 29-01-2011, 01:42
|
Utilizadores a ver este tópico: 3 Visitante(s)