Jump to content
Sign in to follow this  
iceball94

Agenda

Recommended Posts

iceball94

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!

Share this post


Link to post
Share on other sites
M6

iceball94, se queres ajuda tens de colocar as tuas dificuldades de forma explicita e concreta.

Ninguém aqui te vai fazer o programa nem sequer olhar para o código fonte ou ver se compila sem erros.

Até lá, vê lá se isto te ajuda: http://www.forumweb.com.br/foruns/topic/20769-trabalhando-com-arquivos-em-pascal/


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.