C++ Probleme

Documente similare
Limbaje de Programare Curs 5 – Siruri de caractere

Microsoft PowerPoint - Curs_SDA_9_RO_2019_v2.pptx

Poo Laboratoare 1 Contents Laborator7 2 1 Colecţii de obiecte în Java Interfaţa Iterator Interfaţa C

Diapositive 1

Slide 1

SUBPROGRAME

Limbaje de Programare Curs 6 – Functii de intrare-iesire

Microsoft PowerPoint - Curs_SDA_10_RO_2019_v1.pptx

Laborator 3

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011

Programarea şi utilizarea calculatoarelor

Structuri de date pentru partiţii de mulţimi O partiţie finită a unei mulţimi nevide S este o mulţime finită de submulţimi ale lui S: {S 1, S 2,..., S

Microsoft PowerPoint - Curs_SDA_4_RO_2019_v2.pptx

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

PROGRAMARE ORIENTATA PE OBIECTE

E_d_Informatica_sp_MI_2015_bar_02_LRO

Limbaje de programare Pointeri. Alocare dinamică (continuare) 26 noiembrie 2012

Microsoft PowerPoint - ImplementareLimbaj [Read-Only] [Compatibility Mode]

Slide 1

LUCRAREA NR

Procesarea Imaginilor - Laborator 1: Introducere în utilizarea bibliotecii OpenCV 1 1. Introducere în utilizarea bibliotecii OpenCV 1.1. Introducere S

Top

Microsoft PowerPoint - Curs_TPI_22_v01.ppt

Microsoft Word - CarteC.doc

1

Limbaje de Programare Curs 8 – Fisiere

Object Oriented Programming

Slide 1

Laborator 2 Incompatibilităţi/Diferenţe între C şi C++ Completări C++ Supraîncărcarea (redefinirea) numelui de funcţii În C nu este permisă existenţa

Microsoft Word - O problema cu bits.doc

Grafuri neorinetate Aplicatii 1 Care este numărul maxim de componente conexe pe care le poate avea un graf neorientat cu 20 noduri şi 12 muchii? a. 6

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Laborator 2: Instrucţiuni Java şi lucru cu şiruri de caractere Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 18 octombrie 2011

Noțiuni matematice de bază

1 Lucrarea nr. 8 - Structuri de date de tip liste sortate O listă sortată reprezintă un aranjament al înregistrărilor din cadrul listei în funcţie de

Microsoft Word - Software pentru ordonarea multirang a componentelor unei colectivitati.doc

E_d_Informatica_sp_SN_2014_bar_10_LRO

Programarea şi utilizarea calculatoarelor

Subiectul 1

Ingineria Sistemelor de Programare

Lecții de pregă,re la informa,că Admitere 2019 Tema: Discutarea problemelor date la ul,mele sesiuni de admitere Bogdan Alexe

Facultatea de Automatică și Calculatoare

Slide 1

L7

Laborator 9: Fire de execuţie Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 20 noiembrie 2011

Microsoft Word - CarteC.doc

Slide 1

Microsoft Word - PCLP2_Curs_4_2019.doc

Algoritmi genetici paraleli. Implementari Java. Continut laborator: 1. Obiectivul lucrarii. 2. Notiuni teoretice: 3. Cerinte laborator. 4. Tema. 1. Ob

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Laborator 7 - Stream-uri

Microsoft Word - Curs_08.doc

1

Facultatea de Matematica si Informatica Universitatea din Bucuresti Structuri liniare Liste. Stive. Cozi - Inserare, cautare, stergere - Lectii de pre

Prelegerea 4 În această prelegere vom învăţa despre: Algebre booleene; Funcţii booleene; Mintermi şi cuburi n - dimensionale. 4.1 Definirea algebrelor

Propunator: Morar Florin Colegiul National Silvania Zalau Discipina: Informatica Nivel liceal, cls. XII 1.Să se scrie în limbajul C/C++ definiţia comp

Microsoft Word - BD4_Curs11.doc

Microsoft Word - c6.doc

-

Microsoft Word - lab4.doc

CONCURSUL NAŢIONAL DE MATEMATICA PANAITOPOL EDIŢIA a X-a, TULCEA, 21 aprilie 2018 Clasa a VII - a 1. Se consideră numerele reale x, y şi z, cel puţin

Lab6LCD

Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare

Microsoft PowerPoint - Curs_SDA_3_RO_2019_v2.pptx

Retele Petri si Aplicatii

Laborator 10 - Paradigme de Programare Corutine - suport nativ pentru paralelism în Kotlin Înainte de a trece la realizarea unei aplicații utilizând c

Examenul de bacalaureat 2012

Examenul de bacalaureat 2012

Paradigme de programare

CURBE BÉZIER În CAGD se utilizează adesea curbele polinomiale, adică acele curbe definite de o parametrizare polinomială: C : [a, b] R 3 C(t) = (x(t),

Tablouri unidimensionale Problema 1 Să se determine mulţimea cifrelor unui număr natural n > 0, dat. Exemplu: n= Cifre = {1,2,3,7} Se cere să s

09. Informatica 2 - MM 1

Caraivan George-Alexandru Grupa 431A Interfața driver-kernel la Linux Introducere Deși pentru unii dintre noi acest lucru poate fi o supriză, cei mai

Microsoft Word _POO_Lab_1_Modificari_v01.htm

PPSD

PowerPoint-Präsentation

Declaraţii. Instrucţiuni 19 octombrie 2005 Programarea calculatoarelor 2. Curs 3b Marius Minea

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ Universitatea Babeş-Bolyai Cluj-Napoca superior 1.2 Facultatea Facultatea de Mate

Metode de programare Proiectarea algoritmilor

Slide 1

Tipuri de date abstracte 30 noiembrie 2005 Programarea calculatoarelor 2. Curs 9 Marius Minea

Secţiunea 5-6 începători Concurs online de informatică Categoria PROGRAMARE PROBLEMA puncte PERIODIC Se citește un număr natural nenul N. Se ump

Probleme rezolvate informatica: Probleme rezolvate grafuri si a

Examenul de bacalaureat 2012

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

MINISTERUL EDUCAŢIEI, CULTURII ŞI CERCETĂRII AL REPUBLICII MOLDOVA UNIVERSITATEA DE STAT ALECU RUSSO DIN BĂLŢI FACULTATEA DE ŞTIINŢE REALE, ECONOMICE

Laborator 2 - Încapsularea Programare Orientată pe Obiecte Tema 2.1 Să se analizeze programul EX2.C Indicatii 2.1 A nu se uita de fisierul EX2.H Tema

Inteligență artificială Laboratorul 8 Perceptronul și rețele de perceptroni în Scikit-learn Stanga :multimea de antrenare a punctelor 3d; Dreapta : mu

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

A.E.F. - suport laborator nr.3 sem.ii Aplicațe privind utilizarea rețelelor 1D În acest laborator sunt atinse următoarele aspecte: realizarea schițelo

I

G.I.S. Curs 3

Nr. 932 din Avizat ISJ Vâlcea, Inspector școlar informatică, Ciochină Luisa EXAMEN DE ATESTARE A COMPETENȚELOR PROFESIONALE A ABSOLVENȚILOR

Slide 1

Analiză statică Analiza fluxului de date 23 octombrie 2014

Matematica VI

Platformăde e-learning și curriculăe-content pentru învățământul superior tehnic Sisteme de operare 13. Planificarea proceselor

PowerPoint Presentation

Transcriere:

Enunturi probleme 1. Se consideră un program care descrie organizarea personalului unei instituţii folosid claselor derivate. O clasă numită Angajat deţine date şi funcţii referitoare la un angajat al instituţiei: class Angajat{ char * nume; float salariu; Angajat(); Angajat(char *n, int s, float sal); Angajat(Angajat& r); float getsalariu(); void setsalariu(float s); Diferite categorii de angajaţi necesită date suplimentare faţă de cele definite în clasa Angajat, corespunzătoare postului pe care îl deţin. De exemplu, un şef de secţie (administator) este un angajat (deci sunt necesare toate datele care descriu această calitate) dar mai sunt necesare şi alte informaţii, de exemplu precizare secţiei pe care o conduce. Un administrator este un angajat, de aceea clasa Administrator se poate construi prin derivare din clasa Angajat astfel: class Administrator : public Angajat { int sectie; Administrator(const char *n, float sal, int sec); Administrator(Administrator& r); ~Administrator(); Sa se implementeze aceasta ierarhie de clase. 2. Sa se implementeze un vector(tablou) in care se pot pastra obiecte de tipuri diferite definite de utilizator. Pentru aceasta se defineşte clasa Object ca o clasă de bază pentru toate tipurile derivate: class Object{ Object() { virtual ~Object() { virtual void display() = 0; Clasa ObArray, defineşte un vector de pointeri de tip Object*. Nu este necesar să fie limitată dimensiunea vectorului deoarece se asigură creşterea dimensiunii acestuia atunci când este necesar. class ObArray : public Object { Object **p; // vector de pointeri int size; // numar de elemente la un moment dat int grows; // increment de creştere a dimensiunii int dimens; // dimensiune vector

ObArray(int size=0,int grows, int dimens);//constructor ~ObArray();//Destructor void RemoveAll();//Elimina toate obiectele din vector int getsize(); // Intoarce numarul de elemente din vector. int add(object* x); //Adauga un element la vector. int insertat(int i, Object *x);//insereaza un element pe // o pozitie data int removeat(int i); //Elimina elementul de pe pozitia i Object* getat(int i); //Intoarce elementul de la pozitia i // Afisare elementelor din tablou. Sa se utilizeze aceste clase pentru a memora un tablou de Puncte si un tablou de numere Complexe. 3. Sa se implementeze o ierarhie de clase pentru a realiza operatii cu multimi ale caror elemente vor fi de tipuri diferite. class Element: virtual ~Element(); virtual void display() = 0; virtual void read() = 0; int equals(element&) = 0; virtual char *getclassname()=0; class Set{ private: int size; Element *elements; Set(int size); Set(int size,element *pe); Set(Set&); ~Set(); void insert(element*); void remove(element*); int lookup(element*); // Cautarea unui element Set operator +(Set &);// reuniunea Set operator (Set &);// diferenta Set operator *(Set &);// intersectia int operator ==(Set &);// Testarea egalitatii int operator <(Set &);// Tesstarea incluziunii void read();//citirea elementelor multimii //Afisarea elementelor multimii. Sa se realizeze utilizand aceste clase intersectia a 2 multimi ale caror elemente sunt caractere. 4. Sa se implementeze o clasa care sa retina revistele si cartile dintro biblioteca. Pentru aceasta se va folosi o lista sipmlu inlantuita ale carei elemente sunt revistele si/sau cartile din biblioteca. //Clasa de baza pentru clasa Revista si Carte class Articol{ int cota;//cota cartii sau revistei char *titlul;

} Articol(int cota, char *titlul); Articol(Articol&); virtual ~Articol(); int getcota(); void setcota(int); char *gettitlul(); void settitlul(); virtual virtual void read(); class Revista: public Articol{ int nr;//numarul revistei int tiraj; int frecv;// Numarul de aparitii pe luna Revista(int cota,int titlul,int nr,int tiraj,int frecv); Revista(Revista&); ~Revista(); void read(); class Carte: public Articol{ char *autor; char *editura; int an;//anul aparitiei Carte(int cota,int titlul,char * autor, char *editura, int an); Carte(Carte&); ~Carte(); void read(); class Nod { Articol *info; Nod *next; Nod(Articol *,Nod *next=0); Articol* getinfo(); void setinfo(articol *); Nod *getnext(); Void setnext(nod*); class Biblioteca{ Nod *prim; Bibioteca(); void addarticol(articol *); int removearticol(articol *); Articol * find(int cota); Articol * find (char *titlul); }

5. Se considera clasa Abonat care deriva in clasa Persoana. Supraincarcati operatorii <<, >>. Sa se construiasca clasa Agenda ce contina o lista de abonati si sa se supraincarce operatorul [ ](indexare)care returneaza abonatul cu numele precizat. 6. Sa se implementeze clasa Telefon (nr_tel,nume_operator). Sa se deriveze din aceasta clasa TelefonMobil(autonomie, tip_acumulator). 7. Sa se implementeze clasa abstracta FiguraGeometrica, din care sa se derive Cerc si Poligon. Sa se deriveze din Poligon clasa Patrulater si Triunghi. Din Patrulater sa se deriveze clasa Dreptunghi. Functii virtuale : getaria,getperimetru 8.Implementati urmatoarea ierarhie de clase: class Localitate{ char *denumire; int cod; long nr_locuitori; virtual class Oras :public Localitate{ protected : int nrblocuri;.. class Capitala :public Oras{ char *numeprefect; class Judet { Localitate *p; int nrloc;. 9. Realizati un program care citeste dintr-un fisier text n numere complexe si calculeza produsul lor. 10. Sa se implemente o clasa Grupa ce retine studentii dintr-o grupa. Clasa va avea metode pentru salvarea repectiv incarcarea grupei intr-un/dintr-un fisier. 11. Sa se realizeze un program C++ ce realizeaza concatenarea mai multor fisiere text al caror nume se preiau in linia de comanda. E vor utiliza stream-uri. 12. Sa se implementeze clasa Matrice utilizand template-uri reprezentata sub forma liniara ale carei elemente pot fi numere intregi, reale. Sa se supraincarce operatorii : +,-,*,citire (>>),afisare (<<).

13. Sa se implementeze clasa Multime ale carei elemente pot fi de orice tip. Supraincarcati operatorii: +(reuniune), -(diferenta), *(intersectie). 14. Implementati clasa ArboreBinar ce implementeaza notiunea de arbore binar ale carului noduri pot fi de orice tip: numere intregi,reale, obiecte. Clasa va contine metodele: - creare arbore - parcurgere in inordine - parcurgere in postordine - parcurgere in preordine 15. Implementati clasa ArboreOarecare ce implementeaza notiunea de arbore oreacare ale carului noduri pot fi de orice tip: numere intregi, reale, obiecte. Clasa va contine metodele: - creare arbore - parcurgere in a-preordine - parcurgere in a-postordine 16. Sa se implementeze clasa Coada ale carei element pot fi de orice tip.