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

Introducere

Structura programului

Structurile de date utilizate intern

Descrierea implementarii operatiilor de baza

Concluzii

Bibliografie

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

citire_abonat(abonat* &a)

- primeste ca parametru un articol de tip abonat

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

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

afisare_abonat(abonat* a)

- primeste ca parametru un element de tip abonat

- afiseaza din lista abonatul cautat

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;

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

void list_ls(lista* prim)

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

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 © 2021 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Proiecte

vezi toate proiectele
 SCHITA DE PROIECT DIDACTIC GEOGRAFIE CLASA: a IX-a - Unitatile majore ale reliefului terestru
 PROIECT DIDACTIC 5-7 ani Educatia limbajului - Cate cuvinte am spus?
 Proiect atestat Tehnician Electronist - AMPLIFICATOARE ELECTRONICE
 Proiect - masurarea si controlul marimilor geometrice

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)
 LUCRARE DE DIPLOMA MANAGEMENT - MANAGEMENTUL CALITATII APLICAT IN DOMENIUL FABRICARII BERII. STUDIU DE CAZ - FABRICA DE BERE SEBES
 Lucrare de diploma tehnologia confectiilor din piele si inlocuitor - proiectarea constructiv tehnologica a unui produs de incaltaminte tip cizma scurt

Lucrari licenta

vezi toate lucrarile de licenta
 LUCRARE DE LICENTA CONTABILITATE - ANALIZA EFICIENTEI ECONOMICE – CAI DE CRESTERE LA S.C. CONSTRUCTIA S.A TG-JIU
 Lucrare de licenta sport - Jocul de volei
 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
 Diagnosticul ecografic in unele afectiuni gastroduodenale si hepatobiliare la animalele de companie - TEZA DE DOCTORAT
 Doctorat - Modele dinamice de simulare ale accidentelor rutiere produse intre autovehicul si pieton
 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 MATEMATICA-INFORMATICA - CALUTUL INTELIGENT
 Proiect atestat Tehnician Electronist - AMPLIFICATOARE ELECTRONICE
 ATESTAT PROFESIONAL LA INFORMATICA - programare FoxPro for Windows
 ATESTAT PROFESIONAL TURISM SI ALIMENTATIE PUBLICA, TEHNICIAN IN TURISM









Termeni si conditii
Contact
Creeaza si tu