Ficheiros

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Ficheiros

Mensagem  Admin em Qua Maio 13, 2009 6:53 am

exercicio

Ficheiro de dados para armazenar informação sobre os sócios de uma colectividade (n_socio,nome,localidade,valor da cota,utlimo mês pago)
A aplicação deverá começar por apresentar o seguinte menu e realizem as operações.

-Inserir socios

-Listar socios
-por localidade
-por valor da cota
-pagar cota

Admin
1337-soldier
1337-soldier

Mensagens : 752
Data de inscrição : 02/03/2009
Idade : 26
Localização : Hell

Ver perfil do usuário http://skill-time.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Ficheiros

Mensagem  Admin em Qua Maio 13, 2009 7:22 am

program socio;
type
aplicacao=record
n_socio:integer;
nome:string;
localidade:string;
v_cota:integer;
UMpago:integer;
end;
ficheiro:file of aplicacao;
var
mes:string;
conta:string;
pagar:integer;
F:ficheiro;
socio:aplicacao;
opcao:char;
begin
assign(f,'dados.dat');
rewrite(f);
write('escolha opcao: 1-inserir socio; 2-listar socios; 3-pagar cotas');
readln(opcao);
case opcao of
1:begin
write('insira o nome');
read(socio.nome);
write('insira o nº de socio');
read(socio.n_socio);
write('inserir a localidade');
read(socio.localidade);
write('inserir o valor da cota');
read(socio.V_cota);
write('inserir o ultimo mes pago');
read(f,socio);
end;
2:begin while not EOF(f) do
begin
read(f,socio);
write(socio.nome);
write(socio.n_socio);
write(socio.localidade);
write(socio.V_cota);
write(socio.UMpago);
end;
3:begin
write('quantos meses pretende pagar?');
read(mes);
write('qual o nº de socio que pretende pagar as cotas?');
read(a);
seek (f,a);
read(f,socio);
pagar:=mes*socio.V_cota;
write(pagar);
UMpago.socio=UMpago+mes;
write(f,socio);
end;
close(f);
end.

Admin
1337-soldier
1337-soldier

Mensagens : 752
Data de inscrição : 02/03/2009
Idade : 26
Localização : Hell

Ver perfil do usuário http://skill-time.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Ficheiros

Mensagem  Admin em Sex Maio 15, 2009 8:23 am

I

1- os ficheiros de texto são codificados por forma a poder serem editados em qualquer aplicação capaz de os ler como por exemplo bloco de notas ou comando edit do msdos ao passo que os ficheiros baseados em record são estreturados em cada uma das aplicações logo a aplicação em que foi criado é unica capaz de os ler.

2-faz a ligação entre a variavel e o ficheiro em disco.

3- o rewrite e utilizado para rescrever o ficheiro e prepara-o para escrever novamente e o reset disponibiliza o ficheiro para actualização ou seja leitura e escrita mantendo o existente.

4-quando se fala de ficheiros de texto a diferença e que apos a leitura com o readln o sistema fica preparado para ler na linha seguinte sendo que com o read no final da linha em relação aos ficheiros de dados o comando readln n funciona uma vez que é o sistema que controla o fim de cada um dos registos.

5-Devolve para os ficheiros de dados os numeros de registos e para os ficheiros de texto o numero de linhas.

6- seek

7-Saber a qualquer momento qual a posição do ficheiro . exemplo: filepos(f);

Admin
1337-soldier
1337-soldier

Mensagens : 752
Data de inscrição : 02/03/2009
Idade : 26
Localização : Hell

Ver perfil do usuário http://skill-time.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Ficheiros

Mensagem  Admin em Sex Maio 15, 2009 8:42 am

II

program ex;

var

f:text;
I:string;
begin
assign(f,"ex.text");
rewrite(f);
writeln(f,'modulo8..');
close(f);
reset(f);
read(f,i);
write(i);;
close(f);
end.

Admin
1337-soldier
1337-soldier

Mensagens : 752
Data de inscrição : 02/03/2009
Idade : 26
Localização : Hell

Ver perfil do usuário http://skill-time.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Ficheiros

Mensagem  Admin em Sex Maio 15, 2009 9:31 am

program ex;

aplication=record
nome:string;
preco:real;
quantidade:integer;
end;
ficheiro:file of aplication;
var

armazenamento:real;
resp:boolean;
i,valor,caro,barato:real;
eco:aplication;
begin
barato:=9999;
assign('ficheiro,"dados.dat");
rewrite(ficheiro);
repeat
writeln('insira o nome do produto');
read(eco.nome);
writeln('insira o preço do produto');
read(eco.preco);
writeln('insira a quantidade do produto');
read(eco.quantidade);
write(eco,ficheiro);
writeln('deseja inserir mais? y/n');
read(resp);
i:=i+1;
if eco.preco>caro then
caro:= eco.preco;
if eco.preco<barato then
barato:=eco.preco;
armazenamento:=eco.preco*eco.quantidade;
total:=total+armazenamento;
writeln('o valor total armazenamento do produto é de', armazenamento);
until resp='n'
writeln('o numero de produtos armazenados foi de',i);
writeln('o valor total de produtos armazenados é de',total');
writeln('o produto mais caro tem o valor tem o valor de',caro);
writeln('o produto mais barato tem o valor de',barato);
end.

Admin
1337-soldier
1337-soldier

Mensagens : 752
Data de inscrição : 02/03/2009
Idade : 26
Localização : Hell

Ver perfil do usuário http://skill-time.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Ficheiros

Mensagem  Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum