Gestiunea Bazei de Date a unei Librării

Proiect
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 15 în total
Cuvinte : 2409
Mărime: 12.99KB (arhivat)
Cost: 5 puncte
Profesor îndrumător / Prezentat Profesorului: Lorena Batagan
Academia de Studii Economice, Bucureşti -Cibernetică, Statistică şi Informatică Economică-

Extras din document

Introducere

Aplicaţia realizează gestiunea activităţii unei librării:

- Înregistrează într-o bază de date cărţile care se găsesc în librărie;

- Permite adăugarea de noi înregistrări;

- Permite modificarea editurii cărţilor;

- Permite ştergerea unei înregistrări;

- Afişarea cărţilor aparţinând unei anumite edituri;

- Afişarea cărţilor după cota unică;

- Sortarea cărţilor după editură şi autor.

Datele sunt iniţial memorate într-un fişier binar organizat relativ. Programul permite afişarea într-un fişier text a înregistrărilor făcute în fişierul binar iniţial, însă pentru consultare se va folosi doar fişierul binar. De asemenea, listarea cărţilor după cote şi după gradele de total se va face în fişier text.

Atributele care caracterizează înregistrările sunt următoarele:

- Is: este indicatorul de stare,acesta luand valorile 0 daca pe linia din fisier nu sunt introduse date si 1 daca sunt introduse date;

- Cota: cod unic – ia valori numerice;

- Autor: autorul cărţii;

- Titlu: titlul cărţii;

- Editura: editura de care aparţine cartea;

- Anul apariţiei: anul în care a fost publicată cartea;

- Vânzări[i]: valoarea in lei a vânzării cărţii în lunile I, II şi III.

Aplicaţia este realizată în C şi constă dintr-o serie de subprograme ce sunt apelate în programul principal:

- nr_art(): numără înregistrările dintr-un fişier. Este de tip integer şi are 2 argumente: fişierul şi o mărime de tip int ce va fi egală cu lungimea unei înregistrări la momentul apelului funcţiei;

- creare_fisier_date(): creează fişierul binar şi îl încarcă cu înregistrări;

- afişare_fişier_date(): realizează listarea înregistrărilor din fişierul binar atât pe monitor cât şi în fişierul text „Afisare date.txt”;

- adaugare_date(): adaugă date în fişierul deja creat;

- modificare_editura(): modifică editura unei cărţi a cărei cotă este introdusă de la tastatură;

- stergere_carte(): sterge o carte a cărei cotă este introdusă de la tastatură;

- listare_editura(): listează toate cărţile aparţinând unei edituri introduse de la tastatură;

- listare_cota(): listează toate atributele unei cărţi a cărei cotă este introdusă de la tastatură atât pe ecran cât şi în fişierul text „Listare cota.txt”;

- creare_secv(): copiază înregistrările într-un fişier secvenţial („fis.secv.dat”) pentru a le pregăti de sortare;

- sort(): sortează înregistrările din fişierul secvenţial după editură iar în interiorul editurii, după autor;

- grade(): problema cu grade de total. Calculează media vânzărilor pentru fiecare carte, pentru fiecare editură şi pe întreaga librărie.

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <process.h>

#include <string.h>

#include <ctype.h>

typedef struct

{

int an_aparitie, is, cota, vanzari[3];

char autor[30], titlu[20], editura[25];

} carte;

int nr_art(FILE *f, int l)

{

long p;

int n;

fseek(f,0,2);

p=ftell(f);

n=p/l;

return n;

}

void creare_fisier_date()

{

int i, nr, corect;

carte c;

char sir[30];

FILE *f;

f=fopen("fisier.dat","wb+");

corect=0;

do

{

printf("Introduceti cota "); fflush(stdin);gets(sir);

corect = 1;

for (unsigned char j=0; j<strlen(sir); j++)

if (!isdigit(sir[j])) corect=0;

}

while (corect==0);

nr=atoi(sir);

while(!feof(stdin))

{

if(nr>=nr_art(f,sizeof(carte)))

{

c.is=0;

fseek(f,0,2);

for(i=nr_art(f,sizeof(carte));i<=nr;i++)

fwrite(&c,sizeof(carte),1,f);

}

fseek(f,nr*sizeof(carte),0);

fread(&c,sizeof(carte),1,f);

if (c.is==1)

printf("Exista o carte cu aceasta cotann");

else

{

fseek(f,nr*sizeof(carte),0);

c.cota=nr;

corect=0.

Preview document

Gestiunea Bazei de Date a unei Librării - Pagina 1
Gestiunea Bazei de Date a unei Librării - Pagina 2
Gestiunea Bazei de Date a unei Librării - Pagina 3
Gestiunea Bazei de Date a unei Librării - Pagina 4
Gestiunea Bazei de Date a unei Librării - Pagina 5
Gestiunea Bazei de Date a unei Librării - Pagina 6
Gestiunea Bazei de Date a unei Librării - Pagina 7
Gestiunea Bazei de Date a unei Librării - Pagina 8
Gestiunea Bazei de Date a unei Librării - Pagina 9
Gestiunea Bazei de Date a unei Librării - Pagina 10
Gestiunea Bazei de Date a unei Librării - Pagina 11
Gestiunea Bazei de Date a unei Librării - Pagina 12
Gestiunea Bazei de Date a unei Librării - Pagina 13
Gestiunea Bazei de Date a unei Librării - Pagina 14
Gestiunea Bazei de Date a unei Librării - Pagina 15

Conținut arhivă zip

  • Gestiunea Bazei de Date a unei Librarii.doc

Alții au mai descărcat și

Realizarea unui Sistem Informatic de Gestiune a Cărtilor

Tema proiect: LIBRARIE Se dorește realizarea unui sistem informatic de gestiune a cărtilor în care să se evidențieze clienții precum și editurile...

Baza de Date a unui Catalog Scolar Limbajul de Programare C

1. Tema proiectului Se cere sa se realizeze o baza de date care sa simuleze un catalog scolar. Pentru realizarea bazei de date se vor folosi: o...

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...

Proiectarea Algoritmilor

1. INTRODUCERE ÎN PROIECTAREA ALGORITMILOR 1.1. Definiţii Un algoritm este o metodă de rezolvare pas cu pas a problemelor. O problemă este...

Algoritmi și Structuri de Date

Modulul 0. Alocare dinamica in limbajul C Capitolul 0. Pointeri si alocare dinamica. Tipul de date struct 0.1 Pointeri si alocare dinamica O...

Structuri de Date și Algoritmi

1. Conceptul de dată În informatică, prin dată, se desemnează un model de reprezentare a informaţiei, model cu care se poate opera pentru a obţine...

Baze de Date

Conţinutul temei Datele sunt stocate în memoria internă şi memoria externă a oricărui sistem de calcul. Organizarea datelor se referă la procesul...

Programarea Calculatoarelor

Lucrarea nr. 1 Determinarea experimentala a timpului de execuţie al unui program 1. Scopul lucrării - lucrarea prezintă aspecte legate de...

Ai nevoie de altceva?