Tehnici de Programare

Proiect
9.5/10 (2 voturi)
Domeniu: Calculatoare
Conține 2 fișiere: doc, cpp
Pagini : 62 în total
Cuvinte : 7796
Mărime: 65.85KB (arhivat)
Cost: 6 puncte
Profesor îndrumător / Prezentat Profesorului: Gheorhe Marian
Facultatea de Automatica,Calculatoare si Electronica,Craiova,2009

Cuprins

1. Prezentare generala 1

2. Operatii cu fisier text 4

3. Operatii cu fisier binar 4

4. Operatii cu lista dublu inlantuita 5

5. Operatii cu arborele binar de cautare 6

6. Grafurile asociate 10

Fisier text 10

Fisier binar 11

Lista dublu inlantuita 12

Arborele binar de cautare 13

7. Variabile folosite 14

8. Pseudocod 16

Fisier text 16

Fisier binar 18

Pogram principal 19

9. Continutul programului 29

10.Bibliografie 58

Extras din document

PREZENTARE GENERALE

In proiectul urmator am creat o baza de date cu referire la un hotel (ANGELA).

Baza de date este impartita in doua fisiere:

-text

-binar.

Fisierul text (client.txt) se ocupa cu datele despre clientii hotelului si are urmatoarele campuri :

-nume client;

-prenume client;

-codul numeric personal al clientului;

-numarul de telefon

-camera in care locuieste sau a locuit clientul;

-perioada de cazare a clintului.

Fisierul binar(camera) se ocupa cu datele despre camere si are urmatoarele campuri :

-numarul camerei ;

-numele cameristei ce se ocupa de respectiva camera ;

-prenumele cameristei ce se ocupa de respectiva camera ;

-felul camerei :

-apartament ;

-garsoniere ;

-single ;

-double ;

-daca are sau nu baie proprie ;

-numarul de paturi ce contine respectiva camera ;

Am creat un arbore si o lista dublu inlantuita ce au aceleasi campuri ca si fisierul text,arborele se poate copia din fisierul text si apoi dupa ce am facut modificarile dorite le putem goli inapoi in fisierul text. Lista dublu inlantuita este o alta baza de date legata tot de clientii hotelului,dar nu este aceeasi ca si o fisierului,chiar daca are aceeasi structura.

Mi-am imaginat o problema si anume aceea ca o persoana se afla in interiorul hotelului si se doreste sa se tiparesca drumul cel mai scurt pe care acea peroana ar trebui sa o ia pentru a iesi cat mai repede din hotel,fara sa se rataceasca. Am rezolvat-o cu ajutorul metodei Backtracking recursiv.

In eventualitate ca la hotel ar veni un grup de personane si ar dori sa plece in vizitarea lucurilor inconjuratoare am creat grupuri de n persoane (n introdus de utilizator)

dar cu conditia ca in fiecare grup sa existe cel putin o persoana care sa aiba perioada de cazare mai mare sau egal cu 2.

Operatii cu fisietul text :

* creareText()

Daca fisierul nu a fost creat inca si creaza acum.

* adaugareText()

Adaugarea unui noi inregistrari in fisier Daca fisierul text a fost creat in prealabil adaugam la inceputul fisierului inregistrarea introdusa de la tastatura.

*stergereText()

Stergerea unei integistari Stergerea se face dupa numarul camerei introdus de utilizator,daca se gaseste acea camera se sterge din fisier,daca nu fisierul ramane neschimbat.

*cautareText()

Cautarea unui inregistrari din fisierul text.Cautarea se face dupa numarul camerei,daca s-a gasit o inregistrare ce are numarul camerei ca sic el introdus de utilizator si va afisa.

*listareText()

Listarea fisierului text,se face sub forma de table (nume,prenume,cod numeric personal,numar de telefon,numerul camerei,periaoda de cazare).

*sor()

Apelarea acestei functii ne sorteaza in ordine crescatoare toate intregistrarile din

fisierul text folosind algoritmul de sortare prin interschimbare directa.

Operatii cu fisierul binar:

*creareBinar()

Crearea fisierului binar de la tastatura.Daca fisierul nu a fost creat in prealabil se creaza de la tastatura apeland aceasta procedura.

*adaugareBinar()

Adaugarea unei noi inregistrari de la tastatura in fisierul binar.

*modificareBinar()

Modificarea unei inregistrari.Inregistrarea se cauta in fisierul binar dupa numarul camerei si daca s-a gasit se inlocuiesc valorile respectivei integistrari.

*stergereBinar()

Stergere unei innregistrari din fisierul binar. Inregistrarea se cauta dupa numarul camerei,introdusa in prealabil de utilizator,atunci cand se gaseste se sterge din fisier,daca nu se gaseste nici o inregistrare ce are acest numar al camerei nu se intampla nimic cu fisierul binar si se afiseaza un mesaj corespunzator.

*afisareBinar()

Listarea inregistrarilor din fisierul binar sub fosrma tabelata daca si numai daca fisierul binar a fost creat inainte.

Operatii cu lista dublu inlantuita:

*creare()

Aprelarea procedurii creare() creaza lista dublu inlantuita doar daca aceasta nu a fost creata inainte.

*addInceput()

Apelarea procedurii addInceput() adauga la inceputul listei o inregistrare creata de la tastatura doar daca lista a fost creata inainte.

*addSfarsit()

Apelarea procedurii addSfarsit() adauga la sfarsiul listei o inregistrare introdusa de la tastatura de catre utilizator doar daca lista dublu inlatuita a fost creata imprealabil.

*addDupaNod()

Aceasta procedura adauga o intregistrare introdusa de catre utlizator de la tastatura dupa un anumit nod cauta si gasit dupa campul camera,daca aceasta nu este gasita in lista se adauga la sfarsit.

*addInainteNod()

Apelarea procedurii addInainteNod() adauga inaintea unui inregistrari gasite dupa numarul camerei,o inregistrare introdusa de utlilizator de la tastatura,asta daca si numai daca lista nu este vida.

*stergeInceput()

Procedura stergeInceput() sterge prima inregistrare din lista,doar daca lista este creata inainte,daca nu se creaza intai lista.Daca lista are un singur nod se va sterge acesta si lista va develi vida.

*stergeSfarsit()

Procedura stergeSfarsit() sterge ultima inregistrare din lista iar ultimul nod devine penultimul,asta daca si numai daca lista nu este vida.Daca lista are un singur nod se va sterge acesta si lista va deveni vida.

*stergeNod()

Apelarea acestei proceduri va sterge nodul ce are numarul camerei cel introdus de utilizator,daca aceasta camera nu se afla in lista dublu inlantuita nu se va sterge nimic.

Preview document

Tehnici de Programare - Pagina 1
Tehnici de Programare - Pagina 2
Tehnici de Programare - Pagina 3
Tehnici de Programare - Pagina 4
Tehnici de Programare - Pagina 5
Tehnici de Programare - Pagina 6
Tehnici de Programare - Pagina 7
Tehnici de Programare - Pagina 8
Tehnici de Programare - Pagina 9
Tehnici de Programare - Pagina 10
Tehnici de Programare - Pagina 11
Tehnici de Programare - Pagina 12
Tehnici de Programare - Pagina 13
Tehnici de Programare - Pagina 14
Tehnici de Programare - Pagina 15
Tehnici de Programare - Pagina 16
Tehnici de Programare - Pagina 17
Tehnici de Programare - Pagina 18
Tehnici de Programare - Pagina 19
Tehnici de Programare - Pagina 20
Tehnici de Programare - Pagina 21
Tehnici de Programare - Pagina 22
Tehnici de Programare - Pagina 23
Tehnici de Programare - Pagina 24
Tehnici de Programare - Pagina 25
Tehnici de Programare - Pagina 26
Tehnici de Programare - Pagina 27
Tehnici de Programare - Pagina 28
Tehnici de Programare - Pagina 29
Tehnici de Programare - Pagina 30
Tehnici de Programare - Pagina 31
Tehnici de Programare - Pagina 32
Tehnici de Programare - Pagina 33
Tehnici de Programare - Pagina 34
Tehnici de Programare - Pagina 35
Tehnici de Programare - Pagina 36
Tehnici de Programare - Pagina 37
Tehnici de Programare - Pagina 38
Tehnici de Programare - Pagina 39
Tehnici de Programare - Pagina 40
Tehnici de Programare - Pagina 41
Tehnici de Programare - Pagina 42
Tehnici de Programare - Pagina 43
Tehnici de Programare - Pagina 44
Tehnici de Programare - Pagina 45
Tehnici de Programare - Pagina 46
Tehnici de Programare - Pagina 47
Tehnici de Programare - Pagina 48
Tehnici de Programare - Pagina 49
Tehnici de Programare - Pagina 50
Tehnici de Programare - Pagina 51
Tehnici de Programare - Pagina 52
Tehnici de Programare - Pagina 53
Tehnici de Programare - Pagina 54
Tehnici de Programare - Pagina 55
Tehnici de Programare - Pagina 56
Tehnici de Programare - Pagina 57
Tehnici de Programare - Pagina 58
Tehnici de Programare - Pagina 59
Tehnici de Programare - Pagina 60
Tehnici de Programare - Pagina 61
Tehnici de Programare - Pagina 62

Conținut arhivă zip

  • Tehnici de Programare
    • PROIECTg.CPP
    • Tehnici de Programare.doc

Alții au mai descărcat și

Crearea unui Site Web

1. INTRODUCERE 1.1. Contextul Într-o eră în care informaţia devine din ce în ce mai abundentă şi din ce în ce mai necesară apare nevoia ca...

Baze de Date pentru Gestionarea Activității unei Societăți Comerciale

1. Enuntul problemei de rezolvat Societatea “Telena” este o societate comerciala din Romania care are ca obiect principal de activitate producerea...

Proiect Structuri de Date - Orar

1. INTRODUCERE 1.1 Obiectivul problemei : Aceasta aplicatie informatica are ca obiectiv gestionarea cat mai buna a orarului unei facultati pentru...

Tehnici de Programare

I.TEMA SI CERINTELE PROIECTULUI Tema proiectului o reprezinta evidenta gimnastilor si a performantelor obtinute de acestia la un campionat...

Problema Celor Opt Regine

1. Enunţul problemei. Problema celor 8 regine. Să se plaseze 8 regine pe o tablă de şah a.î. acestea să nu se atace reciproc. O regină atacă orice...

Algoritmi in Programare - Lucru cu Fisiere Binare si Text in C

#include <conio.h> #include <stdio.h> #include <string.h> int terminareProgram = 0; int optiuneInexistenta = 0; typedef struct{ char...

Arhitectura Calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Ai nevoie de altceva?