Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice



Acasa » referate » informatica » baze de date
Structuri de date - proiect - agenda telefonica

Structuri de date - proiect - agenda telefonica



ACADEMIA DE STUDII ECONOMICE

FACULTATEA DE CIBERNETICa, STATISTICa si INFORMATICA ECONOMICA

Structuri de date

PROIECT


AGENDA TELEFONICA

Cuprins

1.    Introducere

2.    Structura programului

3.    Structurile de date utilizate intern

4.    Descrierea implementarii operatiilor de baza

5.    Concluzii

6.    Bibliografie

7.    Anexe

1. Introducere

Obiectivul proiectului este acela de a creea o agenda telefonica, astfel se realizeaza o mai usoara evidenta a contactelor, retinand atat numarul de telefon, cat si orasul, judetul si strada fiecarui abonat in parte.

Programul ofera o posibilitate fiabila pentru gestionarea agendei telefonice personale sau a unei companii. Toate operatiile se efectueaza cu ajutorul meniului de inceput; acesta permite adaugarea, vizualizarea, stergerea si cautarea contactelor.

Datele se adauga interactiv de la tastatura; la iesirea din aplicatie, agenda modificata se salveaza automat intr-un fisier.

2. Structura programului

Programul lucreaza cu o lista simplu inlantuita, ce foloseste ca informatie articole cu urmatoarele campuri :

struct abonat

;

In program se utilizeaza tipuri de date: numeric (date de tip int si double) si sir de caractere (date te tip char).

Programul realizeaza citirea de la tastatura a datelor, dupa care se  introduc intr-un fisier care va fi citit de fiecare data cand se va rula programul. Dupa citirea datelor utilizatorul poate alege intre mai multe functii aflate in meniul din programul principal.

3. Structurile de date utilizate intern:

Programul utilizeaza urmatoarele structuri de date: fisierul, lista simplu inlatuita si masivul unidimensional - vectorul.

Fisierul este o colectie de date omogene stocate pe un suport de memorie externa.

Indiferent de limbajul de programare folosit, operatiile necesare pentru prelucarea fisierelor sunt urmatoarele:

·       Descrierea fisierului;

·       Asignarea fisierului intern (numele logic) la unul extern;

·       Deschiderea fisierului;

·       Operatii de acces la date;

·       Inchiderea fisierului.

       Listele simplu inlantuite

O lista inlantuita este o structura de date in care obiectele sunt aranjate intr-o anumita ordine. Spre deosebire de un tablou, in care ordinea este determinata de indicii tabloului, ordinea intr-o lista inlantuita este determinata de un pointer continut in fiecare obiect. Listele inlantuite asigura o reprezentare mai simpla si mai flexibila pentru multimi dinamice, suportand toate operatiile clasice: adauga element, elimina element, cauta element etc.

Unei liste simplu inlantuite i se omite referinta catre elementul anterior. Astfel putem spune ca avem informatii referitoare doar la urmatorul element, informatiile catre anterior lipsind.



Structura nodurilor din lista simpla inlantuita este urmatoarea:

struct lista      ;

Masivele sunt structuri de date omogene cu un numar finit si cunoscut de elemente, ce ocupa un spatiu contiguu de memorie. Structurile de date de tip masiv reprezinta instrumente de stocare a datelor sub forma de zone compacte si continue din memoria calculatorului.
Un masiv este caracterizat de urmatoarele elemente: 
- numele;
- tipul de data asociat;
- numarul de dimensiuni;
- numarul de elemente pentru fiecare dimensiune.



Masive unidimensionale (vectori)
Vectorii sunt masive unidimensionale. In C++ vectorii se declara folosind sintaxa: 
            tip nume[n];
 unde: 
            - tip – tipul de data folosit; poate fi unul din tipurile de baza (int, float, char, …) sau un tip definit de utilizator (articole, obiecte);
            - nume – numele prin care va fi referit vectorul; 
            - n – numarul de elemente ale vectorului.
In varianta statica, un masiv unidimensional v cu maxim 100 de elemente se defineste astfel: int v[100]; In varianta dinamica, definirea este realizata printr-un pointer la masivul unidimensional v: int *v;

4. Descrierea implementarii operatiilor de baza:

      Programul utilizeaza urmatoarele functii:

1.    citire_abonat(abonat* &a)

- primeste ca parametru un articol de tip abonat

- preia de la tastatura cod, numele persoanei, adresa, oras, judet si telefon.

2.      inserare_nod(lista*& prim, abonat *x)

-        Primeste ca parametrii primul element al listei si un articol de tip abonat

-        Functia adauga in lista simplu inlantuita un element nou de tip abonat

         3.  abonat* cautare(char *nm,lista* prim)

            - functia primeste ca parametrii un element de tip char si primul element al listei simplu inlantuite. Aceasta returneaza o valoare de tip abonat.

     - functia cauta in lista abonatul dupa un anumit nume dupa care il returneaza

4.     afisare_abonat(abonat* a)

- primeste ca parametru un element de tip abonat

            - afiseaza din lista abonatul cautat

5.     stergere_nod(char *nm,lista*& prim)

- primeste ca parametrii un element de tip char semnificand numele si primul element al listei;

- aceasta functie sterge un element din lista cautat dupa un nume dat;

6.     void salvare(lista* prim,FILE *f)

- primeste ca parametrii primul element al listei si fisierul in care se stocheaza datele care au fost folosite in program;

- functia salveaza elementele din lista in fisier dupa ce au fost facute modificari

7.      void list_ls(lista* prim)

           - functia primeste ca parametru primul element al listei si apoi afiseaza toate elementele acesteia;

8.     void afisare_oras(char *or, lista* prim)

-functia primeste ca parametrii un element char ce reprezinta orasul cautat si primul element al listei.

-cauta in intreaga lista toti abonatii ce se gasesc intr-un anume oras.

5. Concluzii

In urma elaborarii acestui proiect am ajuns la urmatoarele concluzii :

Acest program este usor de folosit si necesita foarte putine resurse. Asigura cea mai buna si mai rapida metoda de stocare a datelor, fisierul.

Dupa incheierea operatiilor, aplicatia salveaza agenda automat intr-un fisier, de unde poate fi preluata mai apoi, si elibereaza zona de memorie ocupata. Aceste caracteristici fac acest program fiabil si de incredere.

6. Bibliografie

[IVAN08]

Ion IVAN, Marius POPA, Paul POCATILU - - Structuri de date,vol.1 si 2, Editura ASE, Bucuresti, 2008

[ROSC03]

Ion Gh. Rosca, Bogdan Ghilic Micu, Catalina Lucia Cocianu, Marian Stoica, Cristian Uscatu – Programarea calculatoarelor. Stiinta invatarii unui limbaj de programare. Teorie si aplicatii,  Editura ASE, Bucuresti, 2003. 

[SMEU01]

Ion SMEUREANU, Marian DARDALA,“Programare in limbajul C/C++

Editura Cison, Bucuresti 2001








Politica de confidentialitate

.com Copyright © 2019 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Proiecte

vezi toate proiectele
 PROIECT DE LECTIE Clasa: I Matematica - Adunarea si scaderea numerelor naturale de la 0 la 30, fara trecere peste ordin
 Proiect didactic Grupa: mijlocie - Consolidarea mersului in echilibru pe o linie trasata pe sol (30 cm)
 Redresor electronic automat pentru incarcarea bateriilor auto - proiect atestat
 Proiectarea instalatiilor de alimentare ale motoarelor cu aprindere prin scanteie cu carburator

Lucrari de diploma

vezi toate lucrarile de diploma
 Lucrare de diploma - eritrodermia psoriazica
 ACTIUNEA DIPLOMATICA A ROMANIEI LA CONFERINTA DE PACE DE LA PARIS (1946-1947)
 Proiect diploma Finante Banci - REALIZAREA INSPECTIEI FISCALE LA O SOCIETATE COMERCIALA
 Lucrare de diploma managementul firmei “diagnosticul si evaluarea firmei”

Lucrari licenta

vezi toate lucrarile de licenta
 CONTABILITATEA FINANCIARA TESTE GRILA LICENTA
 LUCRARE DE LICENTA - FACULTATEA DE EDUCATIE FIZICA SI SPORT
 Lucrare de licenta stiintele naturii siecologie - 'surse de poluare a clisurii dunarii”
 LUCRARE DE LICENTA - Gestiunea stocurilor de materii prime si materiale

Lucrari doctorat

vezi toate lucrarile de doctorat
 Doctorat - Modele dinamice de simulare ale accidentelor rutiere produse intre autovehicul si pieton
 Diagnosticul ecografic in unele afectiuni gastroduodenale si hepatobiliare la animalele de companie - TEZA DE DOCTORAT
 LUCRARE DE DOCTORAT ZOOTEHNIE - AMELIORARE - Estimarea valorii economice a caracterelor din obiectivul ameliorarii intr-o linie materna de porcine

Proiecte de atestat

vezi toate proiectele de atestat
 Proiect atestat informatica- Tehnician operator tehnica de calcul - Unitati de Stocare
 LUCRARE DE ATESTAT ELECTRONIST - TEHNICA DE CALCUL - Placa de baza
 ATESTAT PROFESIONAL LA INFORMATICA - programare FoxPro for Windows
 Proiect atestat tehnician in turism - carnaval la venezia






Termeni si conditii
Contact
Creeaza si tu