Extras din proiect
O biblioteca utilizeaza un program care ajuta la gestionarea cartilor pe care biblioteca le are . Programul utilizeaza urmatoarele fisiere :
“carti.txt”contine informatii despre toate cartile din biblioteca
1. Nume autor
2. Prenume autor
3. Titlu carte
4. Editura
5. Data publicarii
6. Cod carte
7. Domeniul
8. Data achizitionarii de catre biblioteca
9. Numar imprumuturi
10. Starea ( imprumutata / disponibila )
11. Daca cartea este imprumutata , numele si prenumele persoanei la care a fost imprumutata , data la care a fost imprumutata si pentru cate zile .
12. Daca este disponibila , numarul maxim de zile pentru care ea poate fi imprumutata.
« persoan.txt »contine informatii despre toate persoanele care au abonament la biblioteca
1. Nume
2. Prenume
3. Adresa
4. Numar telefon
5. Numar intarzieri de peste 30 de zile
Sa se scrie un program care realizeaza urmatoarele :
1. Incarca informatiile din fisierul « carti.txt » intr-o structura de date de tip arbore binar ordonat cu subliste .Inacrca informatiile despre persoanele abonate intr-o lista .
2. Tipareste ordonat alfabetic dupa nume datele despre toti autorii din biblioteca si pentru fiecare autor , toate cartile publicate de acesta si care apartin bibliotecii , in ordine alfabetica a titlului .
3. Tipareste lista cartilor disponibile dintr-un domeniu care se citeste de la tastatura .
4. Citeste numele unui autor si tipareste toate cartile publicate de el .
5. Citestele numele unei carti si tipareste toate cartile din biblioteca care au acelasi nume cu cel introdus ( se va tipari si numele autorului ) . Daca nu exista nici o carte care sa aiba acelasi nume cu cel cautat , se vor tipari toate titlurile de carti care au primele 3 litere egale cu cel din titlul cautat .
6. Tipareste toate informatiile despre persoanele care au imprumutat carti si nu le-au adus in timp util , precum si despre cartile pe care acestia le-au imprumutat .
7. Restituire carte in momentul in care un abonat restituie o carte , starea acesteia se schimba din carte imprumutata in carte disponibila . Daca persoana ce restituie cartea a depasit termenul de restituire , se calculeaza valoarea penalitatilor de platit . Daca depasirea este mai mare de 30 de zile , se mareste numarul de intarzieri , iar in situatia in care acest numar de intarzieri a ajuns identic cu trei se elimina persoana respectiva din listapersoanelor abonate .
8. Imprumutare carte : se introduce autorul si numele cartii pe care o persoana doreste sa o imprumute , si daca este disponibila se imprumuta aceasta carte .
9. Elimina toate acrtile din biblioteca care au vechime mai mare de 10 ani , si o medie de imprumutare pe an mai mica sau egala cu 3 . Daca in urma eliminarii unei carti in structura arborescenta ramane numai numele autorului , fara ac el sa mai aiba nici o carte in biblioteca , se va elimina si autorul .
10. Introduce o carte in biblioteca toate informatiile se vor citi de la tastatura.
11. Realizeaza abonament la biblioteca se citesc informatiile unei persoane care se aboneaza la biblioteca si se actualizeaza lista persoanele abonate .
12. Iesire din program . Inainte de iesirea din program se va actualiza continutul tuturor fisierelor .
CODUL SURSA
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
typedef struct nodlist{
char *nume;
char *prenume;
char *adresa;
float nr_tel;
int nr_int;
struct nodlist *urm;
}lista;
typedef struct nodl{
char *titlu;
char *editura;
int dp_an, dp_luna, dp_zi;
int cod;
char *domeniu;
int da_an, da_luna, da_zi;
int nr_imp;
int stare;
char *imp_nume, *imp_prenume;
int imp_an, imp_luna, imp_zi;
int imp_timp;
int dis_timp;
struct nodl *urm;
}sublista;
typedef struct nod{
char *nume, *prenume;
struct nod *st, *dr;
sublista *prim;
}arbore;
Preview document
Conținut arhivă zip
- HOPE.C
- Structuri de Date si Algoritmi.doc