Buscar

FilaSequencial.h

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

#ifndef FILASEQUENCIAL_H_INCLUDED
#define FILASEQUENCIAL_H_INCLUDED
#define MAX 10
using namespace std;
struct Fila{
 int elementos[MAX];
 int inic, fim, qtde;
 Fila();
 void insere(int x);
 int remover();
 int primeiro();
 int ultimo();
 bool filacheia();
 bool filavazia();
 int getInic();
 int getFim();
 int getQtde();
 int mostrafila();
 int getValor(int posicao);
};
Fila::Fila(){
 qtde=0;
 inic=0;
 fim=-1;
}
void Fila::insere(int x){
 fim++;
 if(fim==MAX) fim=0;
 elementos[fim]=x;
 qtde++;
}
int Fila::remover(){
 int t=elementos[inic];
 inic++;
 if(inic==MAX) inic=0;
 qtde--;
 return t;
}
int Fila::primeiro(){
 return elementos[inic];
}
int Fila::ultimo(){
 return elementos[fim];
}
bool Fila::filavazia(){
 return qtde==0;
}
bool Fila::filacheia(){
 return qtde==MAX;
}
int Fila::getFim(){
 return fim;
}
int Fila::getInic(){
 return inic;
}
int Fila::getQtde(){
 return qtde;
}
int Fila::getValor(int posicao){
 return elementos[posicao];
}
int Fila::mostrafila(){
 for(int i=inic;i<=fim;i++){
 cout<<i<<": "<<elementos[i]<<endl;
 }
}
#endif // FILASEQUENCIAL_H_INCLUDED

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando

Outros materiais