Algoritmi in Programare - Inchiriere DVd

Imagine preview
(8/10 din 1 vot)

Acest proiect trateaza Algoritmi in Programare - Inchiriere DVd.
Mai jos poate fi vizualizat un extras din document (aprox. 2 pagini).

Arhiva contine 8 fisiere doc, exe, tpu, pas, dat, idx de 19 pagini (in total).

Profesor indrumator / Prezentat Profesorului: Bogdan Ghilic

Iti recomandam sa te uiti bine pe extras si pe imaginile oferite iar daca este ceea ce-ti trebuie pentru documentarea ta, il poti descarca. Ai nevoie de doar 5 puncte.

Domeniu: Calculatoare

Extras din document

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;

Fisiere in arhiva (8):

  • Algoritmi in Programare - Inchiriere DVd
    • CONNEX.DAT
    • CONNEX.IDX
    • Documentatie.doc
    • INDEXATE.PAS
    • INDEXATE.TPU
    • PROJECT.EXE
    • PROJECT.PAS
    • TARIFE.DAT

Alte informatii

Academia de Studii Economice Cibernetică, Statistică şi Informatică Economică