All pastes #410302 Raw Edit

Untitled

public text v1 · immutable
#410302 ·published 2007-03-26 08:29 UTC
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');

}