Extras din proiect
„Alex&Asociații .co” este o firmă de impresariat cu tradiție în România și cu extindere rapidă în exterior, care dorește să gestioneze date despre sportivii aflați sub contract. Pentru aceștia, firma va folosi date despre numele lor, prenumele, sexul, naționalitatea, tara de provenientă, vârsta în ani împliniți, starea civilă (căsătorit, necăsătorit, divorțat), salariul anual primit în euro, echipa la care activează și rolul sau rolurile jucate.
Cerinţe:
1) Să se creeze un nou fişier binar având numele dat de utilizator de la tastatură, în vederea completării cu sportivi.
2) Să se deschidă fişierul nou creat sau un altul deja existent, în vederea prelucrării. Fişierul rămâne deschis pe tot parcursul prelucrărilor.
3) Să se alcătuiască un meniu pentru utilizator cu toate opţiunile care urmează.
4) Să se introducă în fişier sportivii şi datele despre aceştia, în funcţie de codul sportivului dat de utilizator de la tastatură. La încheiere, se furnizează cod=-1.
5) Să se afişeze într-un fişier text numit “afisare.txt” sportivii şi numărul curent, codul sportivului, numele, prenumele, sexul, vârsta, salariul anual ale acestora, în funcţie de codul sportivului dat de utilizator de la tastatură. Pentru încheiere, se furnizează cod=-1.
6) Să se afişeze pe monitor toţi sportivii al căror nume este dat de utilizator de la tastatură, precum şi numărul curent, numele, prenumele, codul sportivului, sexul, ţara, vârsta şi echipa la care evolueaza. Se generează sportivi până la introducerea valorii: numes =’stop’.
7) Să se şteargă toţi sportivii al căror cod este introdus de utilizator de la tastatură. Se cere confirmare pentru fiecare ştergere şi se afişează pe monitor numele, prenumele, sexul, vârsta, salariul anual şi echipa înainte de efectuarea ştergerilor. Pentru terminare se introduce cod=-1.
8) Să se afişeze într-un fişier text numit “grade.txt” toţi sportivii şi toate informaţiile legate de aceştia, sportivii fiind sortaţi crescător după naţionalitate, şi pe fiecare naţionalitate crescător după vârstă. Să se facă totalul salariului anual şi după fiecare naţionalitate şi vârstă şi să se afişeze sumele parţiale obţinute după fiecare valoare distinctă a criteriilor menţionate.
Fişierele folosite:
1) “sportivi1”/un fişier creat de utilizator
Am ales folosirea unui fişier de intrare binar, având o organizare relativă (după cheia relativă cod_actor şi folosind indicatorul de stare is). Articolele sale sunt structurate după alcătuirea articolului SPORTIV prezentat mai jos, la punctul 2. Numele său este “sportivi1”, însă utilizatorul poate să folosească un alt fişier ce se poate crea pe loc, având aceeaşi organizare şi aceeaşi structurare a articolelor.
2) “afisare.txt”
Este un fişier ASCII/text de ieşire, unde se depun datele actorilor selecţionaţi. Fişierul este creat de program, prin opţiunea (2) şi nu există iniţial.
3) “grade.txt”
Este un fişier ASCII/text de ieşire, unde se depun rezultatele însumării salariului anual după grade de total/control după câmpuri de grupare sau caracteristici de grupare. Fişierul este creat de program, prin opţiunea (6) şi nu există iniţial.
Structurile de date folosite:
Articolele ce populează fişierul de intrare sunt definite în felul următor:
Structura articolului SPORTIV
Codul
sportivului Numele
sportivului Prenumele
sportivului Sexul Naţiona-
litatea Ţara Vârsta Starea
civilă Salariul
anual Echipa Roluri
jucate Indi-
cator
de
stare
R
O
L
1 R
O
L
2
Int char[16] char[16] char[2] char[9] char[15] int char[2] float char[9] char
[11] char
[11] int
Articolul ROL întră în alcătuirea articolului SPORTIV.
Conţinutul problemelor formulate:
1) Creare de fişier binar.
2) Deschidere de fişier binar.
3) Meniu cu opţiunile utilizatorului, legate de tema aleasă.
4) Adăugare articole/populare fişier în acces direct.
5) Consultare/afişare în acces direct.
6) Modificare articole în acces direct.
7) Ştergere articole în acces direct.
8) Listă cu grade de total.
Descrierea algoritmilor:
1) Creare de fişier binar şi 2) Deschidere de fişier binar.
Se foloseşte o variabilă booleană “vb”, care arată dacă a fost deschis fişierul “fis” sau nu.
Cât timp fişierul nu este deschis, se cere utilizatorului să introducă numele fişierului şi se încearcă deschiderea acestuia. Dacă nu s-a reuşit deschiderea, atunci se întreabă utilizatorul dacă doreşte să creeze fişierul “fis” ca fişier nou. Dacă răspunde “da”, se creează fişier nou, se închide şi se redeschide pentru citire şi alte operaţii, respectiv, se face vb=1, însemnând că fişierul este deschis. Dacă s-a reuşit deschiderea, se face vb=1.
Preview document
Conținut arhivă zip
- Debug
- gestiune_firma_impresariat.exe
- gestiune_firma_impresariat.ilk
- gestiune_firma_impresariat.pdb
- gestiune_firma_impresariat
- Debug
- BuildLog.htm
- gestiune_firma_impresariat.exe.embed.manifest
- gestiune_firma_impresariat.exe.embed.manifest.res
- gestiune_firma_impresariat.exe.intermediate.manifest
- gestiune_firma_impresariat.obj
- mt.dep
- stdafx.obj
- vc90.idb
- vc90.pdb
- afisare.txt
- gestiune_firma_impresariat.cpp
- gestiune_firma_impresariat.vcproj
- gestiune_firma_impresariat.vcproj.Alexu-PC.Alexu.user
- grade.txt
- ReadMe.txt
- stdafx.cpp
- stdafx.h
- targetver.h
- ve-11C4.tmp
- ve-18B9.tmp
- ve-2210.tmp
- ve-2A6E.tmp
- ve-4A9D.tmp
- ve-5F36.tmp
- ve-63D.tmp
- ve-6D14.tmp
- ve-702D.tmp
- ve-79DB.tmp
- ve-8893.tmp
- ve-8D53.tmp
- ve-901C.tmp
- ve-91C3.tmp
- ve-92AB.tmp
- ve-93DB.tmp
- ve-974A.tmp
- ve-9BB2.tmp
- ve-9F5D.tmp
- ve-A3BD.tmp
- ve-C9D9.tmp
- ve-CA6D.tmp
- ve-CCB2.tmp
- ve-E80A.tmp
- ve-EC26.tmp
- ve-F279.tmp
- gestiune_firma_impresariat.ncb
- gestiune_firma_impresariat.sln
- gestiune_firma_impresariat.suo
- Proiect Algoritmi in Programare - Gestiune Firma Impresariat.docx