0% found this document useful (0 votes)
75 views21 pages

Programe C++

The document contains C++ code that defines classes for geometric shapes and windows. The shape classes include Point, Segment, Square, and Triangle, with Point as the base class. The window class Fenetre inherits from a Title class and defines properties like position, size, and methods to display and clear the window. Main tests the shape classes by creating objects, calling virtual methods, and displaying output.

Uploaded by

Chitimbauer
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
75 views21 pages

Programe C++

The document contains C++ code that defines classes for geometric shapes and windows. The shape classes include Point, Segment, Square, and Triangle, with Point as the base class. The window class Fenetre inherits from a Title class and defines properties like position, size, and methods to display and clear the window. Main tests the shape classes by creating objects, calling virtual methods, and displaying output.

Uploaded by

Chitimbauer
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 21

// #include<iostream.h> #include<conio.h> class matrice {int p; public: int*matricea; matrice(int dim {p!dim; matricea!

ne" int#p*p$; % &matrice( {delete#$matricea;% %; class punct {public: int nr'ordine; punct( {nr'ordine!(;% punct(int numar {nr'ordine!numar;% %; class arc:public punct {public: punct )arf; arc( {)arf.nr'ordine!(;% arc(int numar {)arf.nr'ordine!numar;% %; class graf {int nr'arce; public: arc*graful; afisare( ; graf(int numar {nr'arce!numar; graful!ne" arc#numar$; % %;

Program : Graful.cpp

)oid main( {clrscr( ; int nr; int e*ista; int nr'ma*'subramuri; int arc'crt; char tasta!+a+; cout<<,-onstruirea unui arbore binar,; cout<<,.n/ati numarul de noduri : ,;cin>>nr; matrice mat(nr ; graf gr(nr01 ; cout<<,.n2rborele are ,<<nr<<, noduri. 3iecare nod are cel mult 4 subramuri,; for(int f!1;f<!nr01;f55 {cout<<,.n6odul ,<<f<<, are ca succesor urmatorul nod 7,; nr'ma*'subramuri!4; for(int g!1;g<!f;g55 {mat.matricea#(f01 *nr5f01$!(; mat.matricea#(f01 *nr5g01$!mat.matricea#(g01 *nr5f01$; % for(int g!f51;g<!nr;g55

{if(nr'ma*'subramuri>( {e*ista!(; for(int h!1;h<f;h55 {if(mat.matricea#(h01 *nr5g01$!!1 {e*ista!1;% % if(e*ista!!( {cout<<,.n 0 nodul (d0pentru +da+ :,<<g; cin>>tasta; if(tasta!!+d+88tasta!!+/+ {mat.matricea#(f01 *nr5g01$!1; nr'ma*'subramuri00; % else{mat.matricea#(f01 *nr5g01$!(;% % else{mat.matricea#(f01 *nr5g01$!(;% %% % //construirea arborelui arc'crt!(; for(int f!1;f<!nr01;f55 {for(int g!f51;g<!nr;g55 {if(mat.matricea#(f01 *nr5g01$!!1 {arc'crt55; gr.graful#arc'crt$.nr'ordine!f; gr.graful#arc'crt$.)arf.nr'ordine!g; % % % cout<<,.n.n.n9e afisea:a arborele :,; for(int f!1;f<!arc'crt;f55 {cout<<,.n * ,<<gr.graful#f$.nr'ordine<<,0>,<<gr.graful#f$.)arf.nr'ordine; % getch( ; %

#include<iostream.h> #include<conio.h> class punct {public: float *o;<o; punct( {*o!(;<o!(;% %; class patrat:public punct {float *);<); public: patrat(float *ocrt;float <ocrt;float lcrt {*o!*ocrt;<o!<ocrt;*)!*o5lcrt;<)!<o5lcrt;% float aria( {return (*)0*o *(*)0*o ;% %; class dreptunghi:public punct {public: float *);<); dreptunghi(float *ocrt;float <ocrt;float =crt;float lcrt {*o!*ocrt;<o!<ocrt;*)!*o5=crt;<)!<o5lcrt;% float aria( {return (*)0*o *(<)0<o ;% %; class triunghi:public punct {public: float *);<); triunghi(float *ocrt;float <ocrt;float *)crt;float <)crt {*o!*ocrt;<o!<ocrt;*)!*)crt;<)!<)crt;% float aria( {return (*)0*o *(<)0<o ;% %; )oid main( {clrscr( ; float p1;p4;p>;p?; cout<<,.nP2@A2@B=.n,; cout<<,.nCntroduceti coordonatele punctului din stanga Dos ,; cout<<,(ba:a este paralela cu abscisa :.n 0 abscisa : ,; cin>>p1; cout<<,.n 0 ordonata : ,;cin>>p4; cout<<,.nCntroduceti lungimea laturii : ,;cin>>p>; patrat pt(p1;p4;p> ; cout<<,.n-oordonatele punctelor sunt :,; cout<<,.n2(,<<pt.*o<<,;,<<pt.<o<<, ;,; cout<<,.nE(,<<(pt.*o5p> <<,;,<<pt.<o<<, ;,; cout<<,.n-(,<<(pt.*o5p> <<,;,<<(pt.<o5p> <<, ;,; cout<<,.n/(,<<pt.*o<<,;,<<(pt.<o5p> <<, ;,; cout<<,.n2ria patratului este : ,<<pt.aria( ; cout<<,.n.n.n/AFP@B6GGCB=,; cout<<,.nCntroduceti coordonatele punctului din stanga Dos ,; cout<<,(ba:a este paralela cu abscisa :.n 0 abscisa : ,; cin>>p1; cout<<,.n 0 ordonata : ,;cin>>p4; cout<<,.nCntroduceti lungimea : ,;cin>>p>; cout<<,.nCntroduceti latimea : ,;cin>>p?; dreptunghi dr(p1;p4;p>;p? ; cout<<,.n-oordonatele punctelor sunt :,; cout<<,.n2(,<<dr.*o<<,;,<<dr.<o<<, ;,; cout<<,.nE(,<<(dr.*o5p> <<,;,<<dr.<o<<, ;,; cout<<,.n-(,<<(dr.*o5p> <<,;,<<(dr.<o5p? <<, ;,; cout<<,.n/(,<<dr.*o<<,;,<<(dr.<o5p? <<, ;,; cout<<,.n2ria dreptunghiului este : ,<<dr.aria( ; cout<<,.n.n.n@ACB6GGCB= C9H9-F=,; cout<<,.nCntroduceti coordonatele punctului din stanga Dos ,;

cout<<,(ba:a este paralela cu abscisa :.n 0 abscisa : ,; cin>>p1; cout<<,.n 0 ordonata : ,;cin>>p4; cout<<,.nCntroduceti coordonatele )arfului :.n 0 abscisa : ,;cin>>p>; cout<<,.n 0 ordonata : ,;cin>>p?; triunghi tr(p1;p4;p>;p? ; cout<<,.n-oordonatele punctelor sunt :,; cout<<,.n2(,<<tr.*o<<,;,<<tr.<o<<, ;,; cout<<,.nE(,<<(tr.*o54*(p>0tr.*o <<,;,<<tr.<o<<, ;,; cout<<,.n-(,<<(p> <<,;,<<(p? <<, ;,; cout<<,.n2ria triunghiului este : ,<<tr.aria( ; getch( ; %

#include<iostream.h> #include<conio.h> class carti {char*denumire;*titlu; int nr'e*emplare;nr'e*'imprum; %; class informatica {carti infor; informatica*inf'ne*t; %; class dictionare {carti dictio; dictionare*dic'ne*t; %; class tehnica {carti tehno; tehnica*teh'ne*t; %; class beletristica {carti belet; beletristica*bel'ne*t; %; class biblioteca:public informatica;public dictionare;public tehnica;public beletristica {int total'carti;total'imprum; %; )oid main( {clrscr( ; getch( ; %

// Program : -omple*.cpp #include<iostream.h> #include<conio.h> class real {public: float Aeal; real( {Aeal!(;% %; class imaginar {public: float Cmaginar; imaginar( {Cmaginar!(;% %; class comple*:public real;public imaginar {public: )oid suma(comple*Ic4 {cout<<,.n.n9uma celor doua numere este :,; cout<<,.n(,<<Aeal<<,;,<<Cmaginar<<, 5(,<<c4.Aeal<<,;,<<c4.Cmaginar; cout<<, !(,<<(Aeal5c4.Aeal <<,;,<<(Cmaginar5c4.Cmaginar <<, ,; % comple*(float re;float im {Aeal!re;Cmaginar!im; % %; )oid main( {clrscr( ; float re1;re4;im1;im4; cout<<,.nCntroduceti primul numar comple* :,; cout<<,.n 0 partea reala : ,;cin>>re1; cout<<,.n 0 partea imaginara : ,;cin>>im1; cout<<,.nCntroduceti cel de0al doilea numar comple* :,; cout<<,.n 0 partea reala : ,;cin>>re4; cout<<,.n 0 partea imaginara : ,;cin>>im4; comple* numar1(re1;im1 ;numar4(re4;im4 ; numar1.suma(numar4 ; getch( ; %

#include<iostream.h> // Jostenire #include<conio.h> #include<math.h> class punct {public: float *o;<o; // obiectul <punct> este definit de doua coordonate : *o;<o )irtual float perimetrul( {return (;% // se defineste o functie )irtuala pentru perimetru )irtual float aria( {return (;% // se defineste o functie )irtuala pentru arie punct( {*o!(;<o!(;% // constructor implicit punct(float *;float < {*o!*;<o!<;% //constructor care defineste punctul prin coordonatele date * si < %; class segment:public punct //clasa <segment> mosteneste clasa <punct>; deci *o si <o )or fi doua coordonate ale sale // din moment ce aceste coordonate sunt mostenite public si pot fi folosite direct si de segment; le )om considera coordonatele punctului de origine al segmentului {public: punct )arf; // se defineste cel de0al doilea punct pentru segment (aici se apelea:a constructorul implicit din clasa punct // clasa <segment> are in acest moment > coordonate : *o;<o;)arf; unde )arf este un punct si poate fi apelat prin coordonatele sale )arf.*o si )arf.<o float perimetrul( {return sKrt(()arf.*o0*o *()arf.*o0*o 5()arf.<o0<o *()arf.<o0<o ;% // functia )irtuala perimetru redefinita intoarce lungimea segmentului float aria( {return (;% // fuctia )irtuala aria segment( {)arf.*o!(;)arf.<o!(;% segment(punct p1;punct p4 {*o!p1.*o;<o!p1.<o;)arf.*o!p4.*o;)arf.<o!p4.<o;% // constructor care defineste un segment a)and date doua puncte %; class patrat:public segment // clasa <patrat> mosteneste clasa <segment>; se considera ca patratul este determinat de ? laturi egale ca lungime cu segmentul mostenit // patratul nu este definit prin punctele sale si nici prin laturile sale (aceste elemente nu sunt cunoscute ; ci doar prin // lungimea laturilor sale care se considera egala cu lungimea segmentului mostenit // el mosteneste de la clasa <segment> coordonatele *o ; <o si punctul )arf; acestea fiind suficiente pentru a determina lungimea laturilor sale si astfel sa fie calculat perimetrul si aria patratului {public: float perimetrul( {return ?*sKrt(()arf.*o0*o *()arf.*o0*o 5()arf.<o0<o *()arf.<o0<o ;% // functia )irtuala intorce de patru ori lungimea segmentului float aria( {return (()arf.*o0*o *()arf.*o0*o 5()arf.<o0<o *()arf.<o0<o ;% // fara radical <sKrt> functia intoarce aria prin patratul lungimii segmentului patrat(segment s {*o!s.*o;<o!s.<o;)arf.*o!s.)arf.*o;)arf.<o!s.)arf.<o;% // constructor care defineste patratul printr0un segment dat %; )oid main( {clrscr( ; punct o(L;M ;)(N;1( ; // se definesc doua puncte prin coordonatele sale segment s(o;) ; // se defineste un segment prin doua puncte date patrat p(s ; // se defineste un patrat printr0un segment dat punct*pp; // pointer la punct pp!Io; // pointerului i se da adresa unui punct asa ca : cout<<,.nPerimetrul punctului este : ,<<pp0>perimetrul( ; // este apelata functia )irtuala definita in clasa punct cout<<,.n2ria punctului este : ,<<pp0>aria( ; pp!Is; // pointerului i se da adresa unui segment; asa ca : cout<<,.n.n=ungimea segmentului este : ,<<pp0>perimetrul( ; // este apelata functia )irtuala redefinita in clasa segment cout<<,.n2ria segmentului este : ,<<pp0>aria( ; pp!Ip; // pointerului i se da adresa unui patrat; asa ca : cout<<,.n.nPerimetrul patratului este : ,<<pp0>perimetrul( ; // este apelata functia )irtuala redefinita in clasa patrat cout<<,.n2ria patratului este : ,<<pp0>aria( ; getch( ; %

// Program : 3ereastra.cpp #include<iostream.h> #include<conio.h> class titlul {public: char*titlu; )irtual )oid @itlu( !(; %; class fereastra:public titlul {public: int *o;<o;lungime;inaltime; )oid @itlu( ; )irtual )oid afisare( ; )oid sterge( ; fereastra( {*o!(;<o!(;lungime!(;inaltime!(; titlu!,,; % fereastra(int *;int <;int lung;int inalt;char*title ; %; fereastra::fereastra(int *;int <;int lung;int inalt;char*title {*o!*; <o!<; lungime!lung; inaltime!inalt; titlu!ne" char#strlen(title $; titlu!title; % )oid fereastra::afisare( {goto*<(*o;<o ; cout<<,5,; for(int i!1;i<!lungime;i55 {goto*<(*o5i;<o ; cout<<,0,; % goto*<(*o5lungime51;<o ; cout<<,5,; for(int g!1;g<!inaltime;g55 {goto*<(*o;<o5g ; cout<<,8,; goto*<(*o5lungime51;<o5g ; cout<<,8,; % goto*<(*o;<o5inaltime51 ; cout<<,5,; for(int i!1;i<!lungime;i55 {goto*<(*o5i;<o5inaltime51 ; cout<<,0,; % goto*<(*o5lungime51;<o5inaltime51 ; cout<<,5,; @itlu( ; % )oid fereastra::@itlu( {goto*<(*o5(lungime0strlen(titlu 04 /4;<o ; cout<<, ,<<titlu<<, ,; %

)oid fereastra::sterge( {for(int i!(;i<!inaltime51;i55 {for(int g!(;g<!lungime51;g55 {goto*<(*o5g;<o5i ; cout<<, ,; % % % class deplasare:public fereastra {public: int deplasare'ori:ontala;deplasare')erticala; )oid afisare( ; deplasare(fereastraIfero;int ori:ontal;int )ertical {*o!fero.*o; <o!fero.<o; inaltime!fero.inaltime; lungime!fero.lungime; titlu!ne" char#strlen(fero.titlu $; titlu!fero.titlu; deplasare'ori:ontala!ori:ontal; deplasare')erticala!)ertical; % %; )oid deplasare::afisare( {sterge( ; *o5!deplasare'ori:ontala; <o5!deplasare')erticala; fereastra::afisare( ; % class modificare:public fereastra { la; fereastra::afisare( ; % )oid main( {clrscr( ; fereastra fer(L;L;>L;1(;,@itlu, ; fer.afisare( ; getch( ; fer.sterge( ; getch( ; fer.afisare( ; getch( ; deplasare fer1(fer;1(;1( ; fer1.afisare( ; getch( ; deplasare fer4(fer1;0L;0N ; fer4.afisare( ; getch( ; modificare fer>(fer4;L;1( ; fer>.afisare( ; getch( ; modificare fer?(fer>;04;0L ; fer?.afisare( ; getch( ; %

// Program : 3iguri.cpp #include<iostream.h> #include<conio.h> #include<math.h> int figura!(; class triunghi {public: float latura1;aria1; )oid Cnitial1( {cout<<,.n.nCntroduceti latura triunghiului echlateral : ,; cin>>latura1; aria1!latura1*latura1*(sin(J'PC/> /4; % %; class patrat {public: float latura4;aria4; )oid Cnitial4( {cout<<,.n.nCntroduceti lungimea laturii patratului : ,; cin>>latura4; aria4!latura4*latura4; % %; class cerc {public: float ra:a;aria>; )oid Cnitial>( {cout<<,.n.nCntroduceti ra:a cercului : ,; cin>>ra:a; aria>!ra:a*ra:a*J'PC; % %; class fig'geom'plana:public triunghi;public patrat;public cerc {public: float sectiune( {if(figura!!1 {return aria1;% else {if(figura!!4 {return aria4;% else {return aria>;% % % %; class fig'geom'spatiu:public fig'geom'plana {public: float inaltimea; %; class piramida:public fig'geom'spatiu {public: piramida( {if(figura!!1 {Cnitial1( ; cout<<,.n3igura geometrica : tetraedru..n.nCntroduceti inaltimea tetraedrului : ,; cin>>inaltimea; cout<<,.n9ectiunea triunghiului de ba:a : ,<<sectiune( ; cout<<,.nOolumul tetraedrului : ,<<sectiune( *inaltimea/>; % else {if(figura!!4 {Cnitial4( ; cout<<,.n3igura geometrica : piramida patratica..n.n,;

cout<<,Cntroducetu inaltimea piramidei : ,; cin>>inaltimea; cout<<,.n9ectiunea patratului de ba:a :,<<sectiune( ; cout<<,.nOolumul piramidei : ,<<sectiune( *inaltimea/>; % else {if(figura!!> {Cnitial>( ; cout<<,.n3igura geometrica : con..n.nCntroduceti inaltimea conului : ,; cin>>inaltimea; cout<<,.n9ectiunea cercului de ba:a : ,<<sectiune( ; cout<<,.nOolumul conului : ,<<sectiune( *inaltimea/>; % % % % %; class prisma:public fig'geom'spatiu {public: prisma( {if(figura!!1 {Cnitial1( ; cout<<,.n3igura geometrica : prisma triunghiulara..n.nCntroduceti inaltimea prismei : ,; cin>>inaltimea; cout<<,.n9ectiunea triunghiului de ba:a : ,<<sectiune( ; cout<<,.nOolumul prismei triunghiulare : ,<<sectiune( *inaltimea; % else {if(figura!!4 {Cnitial4( ; cout<<,.n3igura geometrica : prisma patratica..n.n,; cout<<,Cntroducetu inaltimea prismei : ,; cin>>inaltimea; cout<<,.n9ectiunea patratului de ba:a :,<<sectiune( ; cout<<,.nOolumul prismei : ,<<sectiune( *inaltimea; % else {if(figura!!> {Cnitial>( ; cout<<,.n3igura geometrica : cilindru..n.nCntroduceti inaltimea cilindrului : ,; cin>>inaltimea; cout<<,.n9ectiunea cercului de ba:a : ,<<sectiune( ; cout<<,.nOolumul cilindrului : ,<<sectiune( *inaltimea; % % % % %; )oid main( {clrscr( ; figura!1; piramida pir1; prisma pris1; figura!4; piramida pir4; prisma pris4; figura!>; piramida pir>; prisma pris>; getch( ; %

// Program : Gara.cpp #include<iostream.h> #include<conio.h> #include<stdio.h> class ore {public: int minut;ora; )oid diferenta'ore(ore ora1;ore ora4 ; )oid afis( ; )oid Cnitiali:are( ; ore( {ora!(;minut!(;% %; )oid ore::Cnitiali:are( {cout<<,.nCntroduceti ora : ,; cin>>ora; cout<<,.nCntroduceti minutul : ,; cin>>minut; "hile(minut<( {minut5!M(; ora5!1; % "hile(minut>M( {minut0!M(; ora0!1; % "hile(ora<( {ora5!4?; % "hile(ora>4? {ora0!4?; % cout<<,.nJemorat 0 ,<<ora<<,:,<<minut; % )oid ore::afis( {if(ora<1( {cout<<, ,<<ora;% else {cout<<ora;% cout<<,:,; if(minut<1( {cout<<,(,<<minut;% else {cout<<minut;% % )oid ore::diferenta'ore(ore ora1;ore ora4 {if(ora1.ora>ora4.ora {if(ora1.minut<ora4.minut {minut!M(5ora1.minut0ora4.minut; ora!ora1.ora0ora4.ora01; % else {minut!ora1.minut0ora4.minut; ora!ora1.ora0ora4.ora; % % else {if(ora1.ora!!ora4.ora {if(ora1.minut>!ora4.minut {if(ora1.minut<ora4.minut {minut!M(5ora1.minut0ora4.minut; ora!ora1.ora0ora4.ora01; % else

{minut!ora1.minut0ora4.minut; ora!ora1.ora0ora4.ora; % % else {if(ora4.minut<ora1.minut {minut!M(5ora4.minut0ora1.minut; ora!ora4.ora0ora1.ora01; % else {minut!ora4.minut0ora1.minut; ora!ora4.ora0ora1.ora; % % % else {if(ora4.minut<ora1.minut {minut!M(5ora4.minut0ora1.minut; ora!ora4.ora0ora1.ora01; % else {minut!ora4.minut0ora1.minut; ora!ora4.ora0ora1.ora; % % % % class tren {public: int numar'tren; char*gara'plecare; char*gara'destinatie; char*tip'tren; %; class orar:public tren {public: ore ora'sosire;ora'plecare; ore plecare'gara'plecare; ore sosire'la'destinatie; orar( ; %; orar::orar( {cout<<,.n.n6umarul trenului : ,; cin>>numar'tren; tip'tren!ne" char#1L$; cout<<,.n@ipul trenului : ,; cin>>tip'tren; gara'plecare!ne" char#4($; cout<<,.nGara de plecare : ,; cin>>gara'plecare; cout<<,.nCntroduceti ora de plecare din gara de plecare :.n,; plecare'gara'plecare.Cnitiali:are( ; gara'destinatie!ne" char#4($; cout<<,.nGara de destinatie : ,; cin>>gara'destinatie; cout<<,.nCntroduceti ora de sosire in gara de destinatie :.n,; sosire'la'destinatie.Cnitiali:are( ; cout<<,.nCntroduceti ora de sosire in gara :.n,; ora'sosire.Cnitiali:are( ; cout<<,.nCntroduceti ora de plecare din gara :.n,; ora'plecare.Cnitiali:are( ;

% )oid main( {clrscr( ; ore ora'crt; char*nume'gara; nume'gara!ne" char#4($; cout<<,Cntroduceti numele garii : ,; cin>>nume'gara; orar @ren#L$; getch( ; clrscr( ; goto*<(>P;1 ; cout<<nume'gara<<,.n,; cout<<,.n6umar8@ren 8Gara plecare 8Hra 89osire8Plecare89tationare,; cout<<,.n 8 8/estinatie 8Hra 8/urata8 8,; cout<<,.n00000000000000000000000000000000000000000000000000000000000000000000000000,; for(int i!1;i<!L;i55 {goto*<(1;i*>5> ; cout<<@ren#i01$.numar'tren; goto*<(M;i*>5> ; cout<<,8,<<@ren#i01$.tip'tren; goto*<(M;i*>5? ; cout<<,8,; goto*<(44;i*>5> ; cout<<,8,<<@ren#i01$.gara'plecare; goto*<(44;i*>5? ; cout<<,8,<<@ren#i01$.gara'destinatie; goto*<(?>;i*>5> ; cout<<,8,; ora'crt!@ren#i01$.plecare'gara'plecare; ora'crt.afis( ; goto*<(?>;i*>5? ; cout<<,8,; ora'crt!@ren#i01$.sosire'la'destinatie; ora'crt.afis( ; goto*<(?Q;i*>5> ; cout<<,8,; ora'crt!@ren#i01$.ora'sosire; ora'crt.afis( ; goto*<(?Q;i*>5? ; cout<<,8,; ora'crt.diferenta'ore(@ren#i01$.sosire'la'destinatie;@ren#i01$.plecare'gara'plecare ; ora'crt.afis( ; goto*<(LM;i*>5> ; cout<<,8,; ora'crt!@ren#i01$.ora'plecare; ora'crt.afis( ; goto*<(LM;i*>5? ; cout<<,8,; goto*<(M?;i*>5> ; cout<<,8,; ora'crt.diferenta'ore(@ren#i01$.ora'sosire;@ren#i01$.ora'plecare ; ora'crt.afis( ; goto*<(M?;i*>5? ; cout<<,8,; % getch( ; %

// Program : 6ormare.cpp #include<iostream.h> #include<conio.h> class Hperatia {public: char*denumire'operatie; char*unitate'masura; float )olum; float normati); float posturi'normate(float Oolum;float 6ormati) {return Oolum/6ormati);% Hperatia( ; %; Hperatia::Hperatia( {denumire'operatie!ne" char#4L$; cout<<,.nCntroduceti denumirea operatiei : ,; cin>>denumire'operatie; unitate'masura!ne" char#>$; cout<<,.nCntroduceti unitatea de masura : ,; cin>>unitate'masura; cout<<,.nCntroduceti )olumul : ,; cin>>)olum; cout<<,.nCntroduceti normati)ul : ,; cin>>normati); cout<<,.nPosturile normate sunt : ,<<posturi'normate()olum;normati) <<,.n,; % class 3oaie'acord'pregatiri {public: char*denumire'lucrare; int numar'operatii; int numar'mediu'muncitori; int numar':ile'lucratoare; float salariu'mediu'post; int posturi'programate(int nr'muncitori;int nr':ile {return nr'muncitori*nr':ile;% float total'posturi'normate(int nr'oper ; )irtual float tone'pe'fasie( {return 1;% float norma'acordata(float Posturi'normate'suma;float tone {return tone/Posturi'normate'suma;% float tarif'foaie(float 9alariu'med;float 6orma'ac {return 9alariu'med/6orma'ac;% )oid Cnitiali:are( ; )irtual int tipul'lucrarii( {return 1;% %; float 3oaie'acord'pregatiri::total'posturi'normate(int nr'oper {float @otal'posturi'normate!(; int i; for(i!1;i<!nr'oper;i55 { cout<<,.nCntroducerea datelor operatiei ,<<(i <<,.n,; Hperatia oper'crt; @otal'posturi'normate!@otal'posturi'normate5oper'crt.posturi'normate(oper'crt.)olum;oper'crt.normati) ; % return @otal'posturi'normate; % class 3oaie'acord'abataDe:public 3oaie'acord'pregatiri {public: float inaltime'abataD;lungime'abataD; float tone'pe'fasie( {cout<<,.nCntroduceti lungimea abataDului : ,;

cin>>lungime'abataD; cout<<,.nCntroduceti inaltimea abataDului : ,; cin>>inaltime'abataD; cout<<,.n/e pe o fasie se e*trag ,<<(inaltime'abataD*lungime'abataD*(.M*1.4N <<, to,; return inaltime'abataD*lungime'abataD*(.M*1.4N; % int tipul'lucrarii( {return 4;% %; )oid 3oaie'acord'pregatiri::Cnitiali:are( {int tip!tipul'lucrarii( ; cout<<tip<<,;;.n,; if(tip!!1 {cout<<,.n9e calculea:a foaia de acord pentru pregatiri.n,;% else {cout<<,.n9e calculea:a foaia de acord pentru abataDe.n,;% denumire'lucrare!ne" char#4L$; cout<<,.nCntroduceti numele lucrarii pentru care se calculea:a foaia :.n,; cin>>denumire'lucrare; cout<<,.nCntroduceti numarul mediu de muncitori : ,; cin>>numar'mediu'muncitori; cout<<,.nCntroduceti numarul de :ile lucratoare : ,; cin>>numar':ile'lucratoare; cout<<,.n6umarul de posturi planificate este : ,<<posturi'programate(numar'mediu'muncitori;numar':ile'lucratoare ; float 9uma'tone!tone'pe'fasie( ; cout<<,.n.nCntroduceti salariul mediu pe post : ,; cin>>salariu'mediu'post; cout<<,.nCntroduceti numarul de operatii efectuate de brigada : ,; cin>>numar'operatii; float p'norm!total'posturi'normate(numar'operatii ; cout<<,.n9e definiti)ea:a foaia de acord.n,; cout<<,.n6umele lucrarii : ,<<denumire'lucrare; cout<<,.n6umarul de posturi planificate : ,<<posturi'programate(numar'mediu'muncitori;numar':ile'lucratoare ; cout<<,.n6umarul total de posturi normate : ,<<p'norm; cout<<,.n6orma acordata este : ,<<norma'acordata(p'norm;9uma'tone ; if(tip!!1 {cout<<, ml/post,;% else {cout<<, to/post,;% cout<<,.nProductia planificata : ,<<norma'acordata(p'norm;9uma'tone *posturi'programate(numar'mediu'muncitori;numar':ile'lucratoare ; if(tip!!1 {cout<<, ml,;% else {cout<<, to!,<<norma'acordata(p'norm;9uma'tone *posturi'programate(numar'mediu'muncitori;numar':ile'lucratoare / (9uma'tone/(.M <<, ml,;% cout<<,.n@ariful foii de acord : ,<<salariu'mediu'post/norma'acordata(p'norm;9uma'tone ; if(tip!!1 {cout<<, lei/ml,;% else {cout<<, lei/to,;% getch( ; % )oid main( {clrscr( ; 3oaie'acord'pregatiri*fpreg; 3oaie'acord'pregatiri foaia'preg; 3oaie'acord'abataDe foaia'ab; fpreg!Ifoaia'preg; fpreg0>Cnitiali:are( ; fpreg!Ifoaia'ab; fpreg0>Cnitiali:are( ; %

// Program patrulater.cpp #include<iostream.h> #include<conio.h> #include<math.h> // 9e defineste clasa Punct class Punct { public: float *;<; Punct(float *o!(;float <o!( {*!*o;<!<o;% Punct(PunctIH {*!H.*;<!H.<;% %; // 9e defineste clasa Patrulater con)e* class Patrulater:public Punct { public: Punct 2;E;-;/; float lungime2E;lungimeE-;lungime-/;lungime/2; int unghi2E;unghiE-;unghi-/;unghi/2; Patrulater( {2.*!(;2.<!(;E.*!1(;E.<!(;-.*!1(;-.<!1(;/.*!(;/.<!1(;lungime2E!lungimeE-!lungime-/!lungime/2!1( ;unghi2E!unghi-/!(;unghi-/!unghi/2!Q(;% Patrulater(float *o;float <o;float 2Eo;float E-o;float -/o;int u2E;int uE-;int u-/ ; )oid afisea:a( ; %; Patrulater::Patrulater(float *o;float <o;float 2Eo;float E-o;float -/o;int u2E;int uE-;int u-/ {2.*!*o; 2.<!<o; lungime2E!2Eo; unghi2E!u2E; E.*!2.*5lungime2E*cos(J'PC/1N(*unghi2E ; E.<!2.<5lungime2E*sin(J'PC/1N(*unghi2E ; lungimeE-!E-o; unghiE-!uE-; -.*!E.*5lungimeE-*cos(J'PC/1N(*unghiE- ; -.<!E.<5lungimeE-*sin(J'PC/1N(*unghiE- ; lungime-/!-/o; unghi-/!u-/; /.*!-.*5lungime-/*cos(J'PC/1N(*unghi-/ ; /.<!-.<5lungime-/*sin(J'PC/1N(*unghi-/ ; lungime/2!sKrt((2.*0/.* *(2.*0/.* 5(2.<0/.< *(2.<0/.< ; unghi/2!asin((/.<02.< /lungime/2 ; cout<<,.n3igura : Patrulater.n,; % )oid Patrulater::afisea:a( {cout<<,.nOarfurile au coordonatele :.n,; cout<<,2: *!,<<2.*; cout<<,.n <!,<<2.<; cout<<,.n.nE: *!,<<E.*; cout<<,.n <!,<<E.<; cout<<,.n.n-: *!,<<-.*; cout<<,.n <!,<<-.<; cout<<,.n.n/: *!,<</.*; cout<<,.n <!,<</.<; cout<<,.n.n=aturile au lungimile :,; cout<<,.n2E!,<<lungime2E; cout<<,.nE-!,<<lungimeE-; cout<<,.n-/!,<<lungime-/; cout<<,.n/2!,<<lungime/2;

cout<<,.n.nBnghiurile au masura :,; cout<<,.n2E!,<<unghi2E; cout<<,.nE-!,<<unghiE-; cout<<,.n-/!,<<unghi-/; cout<<,.n/2!,<<unghi/2; getch( ; clrscr( ; % // 9e defineste clasa deri)ata Paralelogram a clasei Patrulater class Paralelogram:public Patrulater { public: Paralelogram( {2.*!(;2.<!(;E.*!1(;E.<!(;-.*!1(;-.<!1(;/.*!(;/.<!1(;lungime2E!lungimeE-!lungime-/!lungime/2!1( ;unghi2E!unghi-/!(;unghi-/!unghi/2!Q(;% Paralelogram(float *o;float <o;float 2Eo;float E-o;int u2E;int uE- ; %; Paralelogram::Paralelogram(float *o;float <o;float 2Eo;float E-o;int u2E;int uE{2.*!*o; 2.<!<o; lungime2E!2Eo; unghi2E!u2E; E.*!2.*5lungime2E*cos(J'PC/1N(*unghi2E ; E.<!2.<5lungime2E*sin(J'PC/1N(*unghi2E ; lungimeE-!E-o; unghiE-!uE-; -.*!E.*5lungimeE-*cos(J'PC/1N(*unghiE- ; -.<!E.<5lungimeE-*sin(J'PC/1N(*unghiE- ; lungime-/!2Eo; unghi-/!u2E51N(; /.*!-.*5lungime-/*cos(J'PC/1N(*unghi-/ ; /.<!-.<5lungime-/*sin(J'PC/1N(*unghi-/ ; lungime/2!lungimeE-; unghi/2!unghiE-51N(; cout<<,.n3igura : Paralelogram.n,; % // 9e defineste clasa deri)ata /reptunghi a clasei Paralelogram class /reptunghi:public Paralelogram { public: /reptunghi( {2.*!(;2.<!(;E.*!1(;E.<!(;-.*!1(;-.<!1(;/.*!(;/.<!1(;lungime2E!lungimeE-!lungime-/!lungime/2!1( ;unghi2E!unghi-/!(;unghi-/!unghi/2!Q(;% /reptunghi(float *o;float <o;float 2Eo;float E-o;int u2E ; %; /reptunghi::/reptunghi(float *o;float <o;float 2Eo;float E-o;int u2E {2.*!*o; 2.<!<o; lungime2E!2Eo; unghi2E!u2E; E.*!2.*5lungime2E*cos(J'PC/1N(*unghi2E ; E.<!2.<5lungime2E*sin(J'PC/1N(*unghi2E ; lungimeE-!E-o; unghiE-!u2E5Q(; -.*!E.*5lungimeE-*cos(J'PC/1N(*unghiE- ; -.<!E.<5lungimeE-*sin(J'PC/1N(*unghiE- ; lungime-/!2Eo; unghi-/!u2E51N(; /.*!-.*5lungime-/*cos(J'PC/1N(*unghi-/ ; /.<!-.<5lungime-/*sin(J'PC/1N(*unghi-/ ;

lungime/2!lungimeE-; unghi/2!unghiE-51N(; cout<<,.n3igura : /reptunghi.n,; % // 9e defineste clasa deri)ata Aomb a clasei Paralelogram class Aomb:public Paralelogram { public: Aomb(float *o;float <o;float 2Eo;int u2E;int uE- ; %; Aomb::Aomb(float *o;float <o;float 2Eo;int u2E;int uE{2.*!*o; 2.< lor /reptunghi si Aomb class Patrat:public /reptunghi { public: Patrat(float *o;float <o;float 2Eo;int u2E ; %; Patrat::Patrat(float *o;float <o;float 2Eo;int u2E {2.*!*o; 2.<!<o; lungime2E!2Eo; unghi2E!u2E; E.*!2.*5lungime2E*cos(J'PC/1N(*unghi2E ; E.<!2.<5lungime2E*sin(J'PC/1N(*unghi2E ; lungimeE-!2Eo; unghiE-!u2E5Q(; -.*!E.*5lungimeE-*cos(J'PC/1N(*unghiE- ; -.<!E.<5lungimeE-*sin(J'PC/1N(*unghiE- ; lungime-/!2Eo; unghi-/!u2E51N(; /.*!-.*5lungime-/*cos(J'PC/1N(*unghi-/ ; /.<!-.<5lungime-/*sin(J'PC/1N(*unghi-/ ; lungime/2!2Eo; unghi/2!unghiE-51N(; cout<<,.n3igura : Patrat.n,; % )oid main( {clrscr( ; Patrulater patr(1L.(;1L.(;1(.(;1(.(;1(.(;Q(;(;Q( ; patr.afisea:a( ; Aomb rombul(1L;1L;1(;?L;1>L ; rombul.afisea:a( ; /reptunghi drept(1L;1L;4(;1(;( ; drept.afisea:a( ; Patrat caro(1L.(;1L.(;1(.(;( ; caro.afisea:a( ; %

// Program : Aaport.cpp #include<iostream.h> #include<conio.h> #include<math.h> class punct {public: float *o;<o; punct( {*o!(;<o!(;% punct(float *crt;float <crt {*o!*crt;<o!<crt;% %; class segment:public punct {public: punct )arf;raport; float R; float unghi; float depl'ori:;depl')ert; segment( ; )oid Aaport( ; )oid rotatie(float alfa ; )oid translatie(float *t;float <t ; %; segment::segment( {cout<<,.nCntroduceti coordonatele punctului de origine :,; cout<<,.n 0 abscisa : ,;cin>>*o; cout<<,.n 0 ordonata : ,;cin>><o; cout<<,.n.n.nCntroduceti coordonatele )arfului :,; cout<<,.n 0 abscisa : ,;cin>>)arf.*o; cout<<,.n 0 ordonata : ,;cin>>)arf.<o; raport.*o!*o;raport.<o!<o; % )oid segment::Aaport( {cout<<,.n.n.n9egmentul este determinat de punctele H(,<<*o<<,;,<<<o<<, si O(,<<)arf.*o<<,;,<<)arf.<o<<, ,; cout<<,.n3ie J(*;< un punct ce apartine segmentului HO care imparte segmenul.nintr0un raport dat R!8HJ8/8 JO8,; cout<<,.n.nCntroduceti raportul R : ,;cin>>R; raport.*o!*o5()arf.*o*R0*o /(15R ; raport.<o!<o5()arf.<o*R0<o /(15R ; cout<<,Punctul J care satisface acest raport este J(,<<raport.*o<<,;,<<raport.<o<<, ..n,; % )oid segment::rotatie(float alfa {float lungime; lungime!sKrt(()arf.*o0*o *()arf.*o0*o 5()arf.<o0<o *()arf.<o0<o ; unghi!asin(()arf.<o0<o /lungime ; cout<<,.n.n.n9egmentul este determinat de punctele H(,<<*o<<,;,<<<o<<, si O(,<<)arf.*o<<,;,<<)arf.<o<<, ,; cout<<,.nPrin rotatie cu unghiul ,<<alfa<<, grade fata de punctul H se obtine segementul,; unghi!unghi5alfa*J'PC/1N(; )arf.<o!<o5lungime*sin(unghi ; )arf.*o!*o5lungime*cos(unghi ; cout<<,.nH(,<<*o<<,;,<<<o<<, si O(,<<)arf.*o<<,;,<<)arf.<o<<, ,; %

)oid segment::translatie(float *t;float <t {cout<<,.n.n.n9egmentul este determinat de punctele H(,<<*o<<,;,<<<o<<, si O(,<<)arf.*o<<,;,<<)arf.<o<<, ,; cout<<,.nPrin translatie cu *!,<<*t<<, si <!,<<<t<<, se obtine segementul,; *o5!*t;<o5!<t; )arf.<o5!<t;)arf.*o5!*t; cout<<,.nH(,<<*o<<,;,<<<o<<, si O(,<<)arf.*o<<,;,<<)arf.<o<<, ,; % )oid main( {clrscr( ; segment s; s.Aaport( ; s.rotatie(>( ; s.translatie(N;? ; getch( ; %

You might also like