A Estrutura de Dados
Por: Mitcho Adnilson • 11/7/2019 • Trabalho acadêmico • 616 Palavras (3 Páginas) • 500 Visualizações
01#include <iostream>
using namespace std;
struct Nodo{
string nome;
string bi;
string destino;
string endereco;
bool pagou;
Nodo *prox;
Nodo(string n,string b,string d,string e,bool p){
nome = n;
bi = b;
destino = d;
endereco = e;
pagou = p;
prox = NULL;
}
};
class Macom{
private:
Nodo *primeiro,*ultimo;
public:
Macom(){primeiro = ultimo = NULL;}
bool vazio();
void inserir(string n,string b,string d,string e,bool p); // problema 3.1
void luanda(); // Problema 3.2
void mostra_dado_bi(string b); // Problema 3.3
bool apagar_dado_bi(string b); // Problema 3.4
bool apaga_que_nao_pagaram(); // Problema 3.5
void mostra();
bool apaga();
bool buscar(string b);
};
bool Macom::vazio(){
return primeiro == NULL;
}
void Macom::inserir(string n,string b,string d,string e,bool p){
Nodo *q = new Nodo(n,b,d,e,p);
if(vazio())
primeiro = ultimo = q;
else
ultimo->prox = ultimo = q;
}
bool Macom::apaga(){
Nodo *q=primeiro;
if(vazio())
return false;
else if(q->prox){
primeiro = q->prox;
delete q;
return true;
}else{
primeiro = ultimo = NULL;
delete q;
return true;
}
}
void Macom::mostra(){
Nodo *q = primeiro;
if(!vazio()){
while(q){
cout << "\n Nome : "<<q->nome<<endl;
cout << " BI : "<<q->bi<<endl;
cout << " Destino : "<<q->destino<<endl;
cout << " Endereco : "<<q->endereco<<endl;
cout << " Pagou[sim(1)/nao(0)] : "<<q->pagou<<endl;
q = q->prox;
}
}
}
void Macom::luanda(){
Nodo *q = primeiro;
if(!vazio()){
while(q){
if(q->destino=="luanda"
...