Algebră liniară numerică - aplicații ale POO în C++

Proiect
9/10 (2 voturi)
Conține 3 fișiere: doc
Pagini : 56 în total
Cuvinte : 11556
Mărime: 252.49KB (arhivat)
Publicat de: Sabin Sîrbu
Puncte necesare: 11

Cuprins

  1. Prefaţă.1
  2. I Capitolul1 Principii ale POO.3
  3. 1.1. Introducere în universul obiectelor.4
  4. 1.2. Caracteristicile de bază ale obiectelor şi lucrului cu obiecte.7
  5. 1.1.1. Paradigma obiect-mesaj.8
  6. 1.1.2. Tipuri abstracte de date.9
  7. 1.2.2.1. Interfaţă şi implementare.10
  8. 1.2.2.2. Clase.11
  9. 1.2.2.3. Compunerea.12
  10. 1.2.2.4. Containere şi extensii ale claselor.12
  11. 1.2.3. Moştenirea.13
  12. 1.2.4. Polimorfismul.14
  13. 1.2.5. Identitatea obiectelor.15
  14. 1.3. Clase şi obiecte în C++.16
  15. 1.3.1. Generalităţi.16
  16. 1.3.2. Structuri şi clase.18
  17. 1.3.3. Funcţii prietene.19
  18. 1.3.4. Clase prietene.20
  19. 1.3.5. Funcţii inline.21
  20. 1.3.6. Funcţii constructor şi destructor.22
  21. 1.3.6.1. Funcţii constructor implicite.22
  22. 1.3.6.2. Funcţii constructor date de utilizator.23
  23. 1.3.6.3. Funcţii destructor.24
  24. 1.3.6.4. Când sunt executaţi constructorii şi destructorii.24
  25. 1.3.7. Membrii de tip static ai claselor.25
  26. 1.3.7.1. Membri statici de tip date.25
  27. 1.3.7.2. Funcţii membre statice.26
  28. 1.3.8. Clase imbricate.26
  29. 1.3.9. Clase locale.27
  30. 1.3.10. Supraîncărcarea operatorilor.27
  31. II Capitolul 2 Exemple de aplicaţii ale POO în C++.30
  32. 2.1. Punctul şi probleme asupra punctului.31
  33. 2.1.1. Noţiuni introductive.31
  34. 2.1.1.1. Despre coordonate.31
  35. 2.1.1.2. Probleme asupra punctului.31
  36. 2.1.2. Implementare în C++.32
  37. 2.2. Vectori în spaţiu.36
  38. 2.2.1. Noţiuni generale.36
  39. 2.2.2. Implementare în C++.38
  40. II Capitolul 3 Aplicaţii ale algebrei liniare în C++.42
  41. Metoda lui Gauss.43
  42. 3.1. Considerente generale.43
  43. 3.2. Implementare în C++.46
  44. Bibliografie.57

Extras din proiect

~ Prefaţă ~

Programarea orientată pe obiecte este un concept întâlnit sub diverse denumiri, printre care: programare obiectuală, programare orientată spre obiect, sau, pe scurt, OOP: Object Oriented Programming.

Dintre stilurile de programare contemporane, ea favorizează cel mai mult apropierea de lumea reală.

O dorinţă mai veche a programatorilor a fost aceea de a utiliza soft deja scris. În acest fel, există posibilitatea ca programatorii să devină cu mult mai eficienţi atunci când au de scris o aplicaţie,

Metoda de a refolosi munca altora nu este nouă. Zeci de ani, singura posibilitate de refolosire a soft-ului a fost dată de utilizarea subprogramelor. Au apărut colecţii de subprograme grupate pe teme. Chiar în C++ există o serie de fişiere antet care permit apelarea multor funcţii specializate. Programarea orientată pe obiect prezintă avantaje cu mult mai mari decât utilizarea subprogramelor. Cunoştinţele dobândite în acest moment nu ne permit nici măcar o enumerare a acestora.

O aplicaţie a POO este Programarea Vizuală. Orice apare pe ecranul nostru atunci când folosim Windows, este realizat cu ajutorul OOP. Fereastra este un obiect, meniul ataşat ferestrei este un alt obiect, butoanele sunt obiecte, bara cu instrumente este un obiect ş.a.m.d.

Astăzi este imposibil să realizăm un program cerut pe piaţă fără ajutorul OOP. Doar să ne imaginăm ce ar însemna ca programatorul să scrie secvenţa prin care se desenează o fereastră, de câte ori programul său o va folosi. Ar fi o muncă titanică şi inutilă.

În această lucrare, prezint în prima parte conceptele generale ale Programării orientate pe obiecte, precum şi o evoluţie a limbajelor de programare până în prezent, particularizând apoi pentru Programarea în C++. Definesc noţiunea de obiect care stă la baza acestui tip de programare şi continui cu noţiunea de clasă, care este un tip abstract. Cele câteva caracteristici alese, cum ar fi clase şi funcţii prietene, constructori şi destructori ai unei clase, supraîncărcarea operatorilor, însoţite de câteva exemple, sunt doar o mică parte din ce înseamnă cu adevărat Modul de programare în C++. În capitolul 2 al lucrării, încep aplicaţiile. Şi, am ales eu două probleme ce fac referire la geometria analitică. Fiecare din probleme are clasa ei reprezentativă: Punct2D, pentru un punct dat în plan de 2 coordonate şi Vector3D pentru un vector din spaţiu. La fiecare, am realizat câteva operaţii, astfel încât să scot în evidenţă posibilitatea de a folosi mai multe metode pentru acelaşi rezultat, dar într-o scriere sau un apel mai elegant. Şi aici, fac referire în mod special la funcţiile de supraîncărcare a operatorilor.

În ultima parte, realizez o aplicaţie de algebră liniară şi anume, dintre metodele directe de rezolvare a unui sistem liniar de ecuaţii Ax=b, am ales metoda lui Gauss cu pivotare parţială. Pentru acest program, am folosit si o bibliotecă personală, Vecmat.h, unde sunt implementate clasele vector şi matrix, împreună cu metodele lor.

1.1. Introducere în universul obiectelor

Programul (informatic) este definit în mod tradiţional ca fiind transpunerea într-un limbaj de programare a algoritmului de rezolvare a unei probleme. Se spune pe bună dreptate că, în terminologie informatică, nimic nu este mai uşor şi totodată mai greu de definit decât noţiunea de obiect.

O definiţie aproximativă pentru obiect ar fi aceea de entitate cu o existenţă concretă sau abstractă, caracterizată printr-un identificator (nume, cod sau ceva similar), o serie de proprietăţi şi care execută sau suportă anumite acţiuni.

Ce legătură au obiectele din lumea reală cu programele informatice? Ei bine, orice program încearcă să soluţioneze o problemă decupată din realitate, deci implicând sub anumite forme obiecte. Orientarea-obiect se poate defini ca fiind modelarea software-ului prin tehnicile de dezvoltare care facilitează construirea de sisteme complexe din componente individuale.

Dintr-o perspectivă istorică, geneza şi evoluţia limbajelor de programare, ca şi a tehnicilor de programare s-a legat aproape întotdeauna de evoluţia sistemelor de calcul. Se cunosc mai multe generaţii de limbaje de programare, pornind de la cele de nivel scăzut (codmaşină) şi ajungând la limbajele de generaţia a patra. La început (adică timp de vreo două decenii şi jumătate) conceperea de programe era apanajul specialiştilor (care trebuiau să cunoască amănunţit hardware-ul pe care lucrau). Pe măsură însă ce s-au construit calculatoare mai puternice şi mai accesibile (din punct de vedere al preţului), limbajele de programare s-au orientat mai mult către utilizatorul obişnuit şi activitatea de programare a putut fi abordată de un cerc mai larg de persoane. De exemplu, prima versiune a limbajului BASIC (Beginner’s Allpurpose Symbolic Instruction Code) a fost scrisă de Kurz şi Kemeny, de la Dartmouth College, SUA, în 1965 pentru familiarizarea studenţilor cu lucrul la calculator. Această versiune cuprindea doar 12 instrucţiuni care erau cuvinte din limba engleză (INPUT, PRINT etc.). Problema accesului la calculator era însă una spinoasă, timpul de prelucrare a unui mainframe din acea vreme fiind costisitor (se folosea sistemul time-sharing).

Preview document

Algebră liniară numerică - aplicații ale POO în C++ - Pagina 1
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 2
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 3
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 4
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 5
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 6
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 7
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 8
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 9
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 10
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 11
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 12
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 13
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 14
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 15
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 16
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 17
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 18
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 19
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 20
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 21
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 22
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 23
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 24
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 25
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 26
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 27
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 28
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 29
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 30
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 31
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 32
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 33
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 34
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 35
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 36
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 37
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 38
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 39
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 40
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 41
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 42
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 43
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 44
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 45
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 46
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 47
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 48
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 49
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 50
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 51
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 52
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 53
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 54
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 55
Algebră liniară numerică - aplicații ale POO în C++ - Pagina 56

Conținut arhivă zip

  • Algebra Liniara Numerica - Aplicatii ale POO in C++.doc
  • Bibliografie.doc
  • Cuprins.doc

Alții au mai descărcat și

Noțiuni introductive C++

Pentru testare se poate folosi urmatorul program: // include obiectele standard // pentru intrari/iesiri cu consola 1 #include <iostream> //...

Hackeri

Hackerii sunt pasionati ai informaticii, care, de obicei au ca scop „spargerea” anumitor coduri, baze de date, pagini web etc. Ei sunt considerati...

Baze de Date

3.Introducere in bd si sgbd-uri Definitie: Numim baza de date o colectie partajata de date aflata in interdependenta logica impreuna cu o...

Ai nevoie de altceva?