rendered paste body
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#define LMAX 10
int cheia[LMAX], prim, ultim, full, empty;
void adaga(int el){
if(full) cout<<"coada e plina\n";
else {
empty = 0;
cheia[ultim] = el;
ultim = (ultim+1) % LMAX;
if(ultim == prim) full = 1;
}
}
int elim(int el){
if(empty) {cout<<"coada e goala\n"; return 0;}
else {
el = cheia[prim];
full = 0;
prim = (prim+1) % LMAX;
if(prim == ultim) empty = 1;
}
return 1;
}
void initcoada(){
prim = 0;
ultim = 0;
full = 0;
empty=0;
}
void main(){
int nr, i;
char c;
initcoada();
do {
if(empty) cout<<"coada vida!\n";
else {
cout<<"coada:\n";
for(i=prim; i<ultim; i++) cout<<cheia[i]<<endl;
}
cout<<"introd comanda (i/e/g):\n";
c = getch();
switch(c){
case 'i':
cout<<"element = ";
cin>>nr;
adaga(nr);
break;
case 'e':
cout<<"element = "<<cheia[prim]<<endl;
if(!elim(prim)) cout<<"nu se poate extrage din coada goala!\n";
break;
}
} while(c != 'g');
}