Biblioteca…

10
Biblioteca…

description

Biblioteca…. cerinta…. Se citeste din fisierul Biblioteca(1).in sirul ce contine numarul de pagini ale cartilor (ex: 352, 56, 85, 251, 12, 642, 1250) a)Sa se creeze stiva 1 care sa contina numerele paginilor mai mici decat 200 - PowerPoint PPT Presentation

Transcript of Biblioteca…

Page 1: Biblioteca…

Biblioteca…

Page 2: Biblioteca…

cerinta…Se citeste din fisierul Biblioteca(1).in sirul

ce contine numarul de pagini ale cartilor (ex: 352, 56, 85, 251, 12, 642, 1250)

a)Sa se creeze stiva 1 care sa contina numerele paginilor mai mici decat 200

b)Sa se creeze stiva 2 care sa contina numerele paginilor mai mari decat 201

c)Sa se afiseze stivele.d)Sa se ordoneze stiva 1e)Sa se elimine el minim din stiva 1f)Sa se afiseze stiva 1

Page 3: Biblioteca…

exemplu…

Page 4: Biblioteca…

punctul a) (secventa c++)a)Sa se creeze stiva 1 care sa contina numerele paginilor mai mici decat 200

while(f>>x){

if (x<=200) push(varf,x);

}

void push(nod *&varf,int x){

nod *p;p=new nod;p->pag=x;p->urm=varf;varf=p;

}

85

12

56

Page 5: Biblioteca…

punctul b) (secventa c++)b)Sa se creeze stiva 2 care sa contina numerele paginilor mai mari decat 201

while(g>>x){

if (x>201) push(varf1,x);

}void push(nod *&varf,int x){

nod *p;p=new nod;p->pag=x;p->urm=varf;varf=p;

}

352

251

642

1250

Page 6: Biblioteca…

punctul c) (secventa c++) c)Sa se afiseze stivele

void parcurgere(nod *varf(1))

{

nod *p;

p=varf(1);

while(p)

{

cout<<" "<<p->pag;

p=p->urm;

}

}

85

12

56

352

251

642

1250

Page 7: Biblioteca…

punctul d) (secventa c++)d)Sa se ordoneze stiva 1

void ordonare(nod *varf)

{

nod *a, *b;

int aux;

a=varf;

while(a){

b=a;

while(b){

if(a->pag > b->pag){

aux = a->pag;

a->pag = b->pag;

b->pag = aux;}

b=b->urm;

}

a=a->urm;

}

}

85

12

ok

ok

interschimbare

Page 8: Biblioteca…

punctul d) (secventa c++)d)Sa se ordoneze stiva 1

void ordonare(nod *varf)

{

nod *a, *b;

int aux;

a=varf;

while(a){

b=a;

while(b){

if(a->pag > b->pag){

aux = a->pag;

a->pag = b->pag;

b->pag = aux;}

b=b->urm;

}

a=a->urm;

}

}

12

ok

ok

interschimbare

85

Page 9: Biblioteca…

punctul e) (secventa c++)e)Sa se elimine el minim din stiva 1

void pop(nod *&varf)

{

nod *p;

p=varf;

varf=varf->urm;

delete p;

}

56

12

85

Page 10: Biblioteca…

punctul f) (secventa c++)e)Sa se afiseze stiva 1

void parcurgere(nod *varf)

{

nod *p;

p=varf;

while(p)

{

cout<<" "<<p->pag;

p=p->urm;

}

} 56

85