Welcome Anonymous
What would you like to do?
Pasted by fila com vetor
Description None
On Monday 08 Feb 06:43
Language C++
Url http://paste.ideaslabs.com/show/Fkv8YuuwaV
Download Here
- #include <iostream>
- using namespace std;
- const int MAXFILA = 100;
- class Fila_vetor {
- int ini;
- int fim;
- int tam;
- int cnt;
- int *data;
- public :
- Fila_vetor(int _tam) {
- tam = _tam;
- data = new int [_tam];
- ini = 0;
- fim = 0;
- cnt = 0;
- }
- bool cheia() {
- return cnt == tam;
- }
- bool vazia() {
- return cnt == 0;
- }
- void adicionar(int elemento) {
- if(cheia())
- throw "Fila cheia";
- else {
- //cout << "antes " << "ini " << ini << "fim " << fim << endl;
- data[fim] = elemento;
- fim = (fim + 1) % tam;
- //cout << "depois" << "ini " << ini << " fim " << fim <<endl;
- cnt++;
- }
- }
- int remover() {
- int valor;
- if(vazia())
- throw "Pilha vazia";
- else {
- valor = data[ini];
- ini = (ini + 1) % tam;
- cnt--;
- }
- return valor;
- }
- int top() {
- /* if(vazia())
- throw "pilha vazia";
- else*/
- return data[ini];
- }
- ~Fila_vetor() {delete [] data;}
- };
- int main() {
- Fila_vetor a(3);
- try{
- a.adicionar(4);
- a.adicionar(1);
- a.adicionar(2);
- a.remover();
- a.adicionar(5);
- }catch(const char* s){
- cout << s;
- }
- return 0;
- }
