M
Mattia Campagna
Ospite
Sia data la struttura seguente:
enum stato {L, O};
struct elem {stato s; elem* pun;};
Scrivere una funzione che, data una lista di elementi di tipo elem, elimina dalla lista tutti gli elementi il cui stato è L e restituisce il numero degli elementi eliminati.
Prima di creare tale funzione ho sto cercando di implementare la funzione che inizializza la lista vuota, la funzione per inserire gli elementi e quella per stamparli così da fare qualche prova.
Credo però di aver problemi sin dall’inizio dal momento che non ho mai trattato il tipo enumerazione ed in questo caso devo lavorare con degli oggetti di tipo “stato”.
Tenete di conto che ho cominciato da un mesetto a studiare il c++ ed ancora sono molto insicuro :S
enum stato {L, O};
struct elem {stato s; elem* pun;};
Scrivere una funzione che, data una lista di elementi di tipo elem, elimina dalla lista tutti gli elementi il cui stato è L e restituisce il numero degli elementi eliminati.
Prima di creare tale funzione ho sto cercando di implementare la funzione che inizializza la lista vuota, la funzione per inserire gli elementi e quella per stamparli così da fare qualche prova.
Credo però di aver problemi sin dall’inizio dal momento che non ho mai trattato il tipo enumerazione ed in questo caso devo lavorare con degli oggetti di tipo “stato”.
Tenete di conto che ho cominciato da un mesetto a studiare il c++ ed ancora sono molto insicuro :S
Codice:
#include <iostream>
#include <cstdlib>
using namespace std;
enum stato {L, O};
struct elem {stato s; elem* pun;};
struct lista {elem* p0;};// testa della lista
void inizializza(lista& L) {
L.p0 = NULL;
}
void intesta(lista& p0, stato stat) {
elem* p = new elem;
p->s = stat; p-> pun = p0; p0 = p;
}
int main() {
lista L0;
inizializza(L0);
void intesta(L0, ??) {
system ("pause");
return 0;
}