Informatica
#include <iostream>
#include <stdlib.h>
using namespace std;
// Definindo elementos da nossa fila; struct Pessoa {// Inicializando struct com nossos elementos; char nome[30], end[40], cpf [20], tel [20]; int tp;
};// fim struct Pessoa;;
// Renomeando struct pessoa para melhor intendimento; typedef struct Pessoa tipoelemento;
struct No {// Struct No, contendo uma nova celula do tipoelemento; tipoelemento info; struct No *prox;
};// fim da struct No;
struct Fila {// Struct Fila, com um tipoelemento apontando para o Inicio,
// e outro apontando para o fim; struct No *inicio; struct No *fim;
};// fim da struct fila
///funçoes void InicializaFila(struct Fila *f) {// Inicializando a fila; f-> inicio = NULL; f-> fim = NULL;
}// fim Inicialização;
void DevolveNo(struct No *f) { //função para limpara fila; free(f);
}// fim função para limpar
int FilaVazia(struct Fila f) {// função para verifiar se a fila esta vazia; if(f.inicio == NULL && f.fim == NULL) return 1; return 0;
}// fim função de verificação;
void Enqueue(struct Fila *f, tipoelemento x) {// função para enfileirar; struct No *aux; // variavel auxiliar aux = (No *) malloc(sizeof(struct No)); // aloco a variavel auxiliar aux-> info = x; aux-> prox = NULL; if(FilaVazia(*f)) {// Se a fila estiver vazia f->inicio = aux; f->fim = aux; } else {//Caso a fila já possua elemento(s) f->fim->prox = aux; f->fim = aux; }
}// fim função de enfileirar;
tipoelemento Dequeue(struct Fila *f) {// função de desenfileirar; tipoelemento x; struct No *aux; if(!FilaVazia(*f)) {// Enquanto a fila não estiver vazia; x = f-> inicio-> info; aux = f-> inicio; f-> inicio = f-> inicio-> prox;