Extras din proiect
Fişiere secvenţiale:
Programul ÎnchiriereDVD este un program dedicate acelora care doresc să ţină evidenţa clienţilor unui centru de închirieri DVD. Este un program bazat pe fişiere secvenţiale.
Are o interfaţă cu meniuri, destul de prietenoasă, care te va ajuta să navighezi printre funcţiile programului. Cu ajutorul acestui program poţi ţine evidenţa clienţilor noi, poţi actualiza baza de date, poţi introduce DVD-urile închiriate de clienţi, poţi seta o categorie preferată pentru clienţi, poţi actualiza plăţile efectuate de clienţi, şi multe altele prin care vom trece în continuare.
Să luăm pe rând toate funcţiile programului. În primul rând meniul principal. Acesta are 5 categorii:
1. Modificaţi baza de date
2. Afişările
3. Efectuaţi plăţile clienţilor
4. Introducerea DVD - urilor închiriate
5. Modificarea tarifelor.
Să le luăm pe rând:
1.Modificaţi baza de date: (1.1. Introducere client nou; 1.2. Ştergere cilent; 1.3. Trecerea de la o categorie la alta; 1.4. Modificarea numelui fişierului de date).
Cu această opţiune putem să adăugăm un client nou, să ştergem un client din baza de date, să modificăm categoria preferată pentru un client, sau să modificăm numele fişierului de date.
Programul funcţionează pe baza categoriei preferate, în sensul că un client îşi alege o categorie de DVD-uri, comandând numai din acea categorie. Bineînţeles că acesta îşi poate schimba categoria când va considera că este potrivit, această schimbare fiind gratuită. Acest lucru ajută la o mai bună gestionare a bazei de date.
2.Afişările: (2.1. Factura unui client; 2.2. Afişarea clienţilor pentru trimiterea facturii; 2.3. Afişarea codurilor disponibile de la un cod dat).
Prin această opţiune avem acces la informaţiile din baza de date. Putem afişa factura unui client şi putem afişa codurile disponibile. Aici trebuie precizat că orice client care este introdus în baza de date primeşte un cod unic, format din 6 cifre. Această numerotare ajută la o mai bună gestionare a bazei de date.
3.Efectuaţi plăţile clienţilor:
Cu această opţiune înregistraţi plăţile efectuate de clienţi şi le anulaţi datoriile.
4.Introducerea DVD-urilor închiriate:
Cu această opţiune introduceţi valoarea DVD-urilor închiriate de clienţi. Aveţi 2 opţiuni: Clasice şi Moderne. Această opţiune ajută la practicarea a 2 tarife pentru fiecare categorie de DVD-uri. De obicei, preţul unui DVD clasic este mai mic decât preţul unui DVD modern.
5.Modificarea tarifelor DVD-urilor
Aceasta este prima opţiune pe care ar trebui să o selectaţi. Aici setaţi preţul pentru fiecare categorie de DVD în parte. Aveţi la dispoziţie 5 categorii: Horror, Acţiune, Comedie, Dramă şi Documentare. Puteţi seta preţuri diferite pentru fiecare secţiune în parte. De asemenea puteţi intra mai târziu pentru a modifica tarifele existente.
6.Iesire (I)
Părăsiţi programul pentru gestionarea DVD-urilor
Programul este compus din două părţi. Executabilul (sau fişierul cu extensia pas şi unitul indexate.tpu). În acesta sunt definite type-urile record, precum şi unele proceduri, pentru a face mai simplă realizarea programului principal. În continuare vă prezentăm codul sursă al unit-ului indexate.tpu:
unit indexate;
interface
type tipcheie = longint;
tipab = record
c:integer;
a:integer;
end;
Categorie = record
a20:tipab;
a15:tipab;
a12:tipab;
a10:tipab;
a5: tipab;
end;
tipcategorii = record
DVDcla:integer;
DVDmod:integer;
end;
dat = record
an:word;
luna:word;
zi:word;
end;
tipart = record
nrm:tipcheie;
nume:string;
date:string;
tipab:1 5;
inchirieri:tipcategorii;
plata:integer;
data:dat;
end;
tipfis=file of tipart;
procedure opennew(var f:tipfis;var numefis:string;var trfa:boolean);
procedure openold(var f:tipfis;var numefis:string;var trfa:boolean);
procedure closefile(var f:tipfis);
procedure readseqrec(var f:tipfis;var z:tipart;var sf:boolean);
procedure readkeyrec(var f:tipfis;var z:tipart;key:tipcheie;var trfa:boolean);
procedure writeseqrec(var f:tipfis;var z:tipart;var trfa:boolean);
procedure writekeyrec(var f:tipfis;var z:tipart;key:tipcheie;var trfa:boolean);
procedure rewriterec(var f:tipfis;var z:tipart;var trfa:boolean);
procedure deleteseqrec(var f:tipfis;var trfa:boolean);
procedure deletekeyrec(var f:tipfis;key:tipcheie;var trfa:boolean);
procedure start(var f:tipfis;key:tipcheie;var trfa:boolean);
implementation
type tipindex = record
is:0 1;
cheie:tipcheie;
nr:word
end;
tabela = file of tipindex;
var g:tabela;
y:tipindex;
procedure sort (var g:tabela);
var h:tabela; a, b:tipindex;i,j:word;
begin
assign(h, 'temp.dat ');
rewrite(h);
seek(g,0);
for i:=1 to filesize(g) do
begin
read(g, a);
if a.is=1 then write(h, a);
end;
close(g);
seek(h,0);
for i:=1 to filesize(h)-1 do
begin
seek(h,i-1);
read(h,a);
for j:=i+1 to filesize(h) do
begin
seek(h,j-1);
read(h,b);
if a.cheie>b.cheie then
begin
seek(h,i-1);write(h, b);
seek(h,j-1);write(h, a);
a:=b
end
end
end;
rewrite(g); seek(h,0);
for i:=1 to filesize(h) do
begin
read(h, a);
write(g, a);
end;
close(h);
erase(h);
end;
procedure opennew;
begin
assign(f, numefis);{$i-}reset(f);{$i+}
if IOResult <>0 then
begin
trfa:=false; rewrite(f);
assign(g,copy(numefis,1,length(numefis)-4)+'.idx');
rewrite(g)
end
else trfa:= true
end;
Preview document
Conținut arhivă zip
- Algoritmi in Programare - Inchiriere DVd
- CONNEX.DAT
- CONNEX.IDX
- Documentatie.doc
- INDEXATE.PAS
- INDEXATE.TPU
- PROJECT.EXE
- PROJECT.PAS
- TARIFE.DAT