Linguaggio C, Pila

di il
6 risposte

Linguaggio C, Pila

Implementare, seguendo uno schema realizzativo con side-effect (senza condivisione), le funzioni primitive per manipolare pile di caratteri rappresentate con rappresentazione sequenziale mediante array. Si usi la seguente dichiarazione per la definizione della struttura:
#define MaxPila 100
typedef ... TipoElemPila;
struct tipoPila {
TipoElemPila pila[MaxPila];
int pos;
};
typedef struct tipoPila TipoPila;[/i]

Scusate, cosa vuol dire "seguendo uno schema realizzativo con side-effect (senza condivisione)". So che side-effect è un effetto "collaterale" ma non trovo niente su internet a riguardo...

6 Risposte

  • Re: Linguaggio C, Pila

    Ma chiedere al professore è vietato?
  • Re: Linguaggio C, Pila

    Abbiamo il forum del corso ma non rispondono da una settimana ormai. Potresti dirmelo cortesemente?
  • Re: Linguaggio C, Pila

    Non ho fatto studi universitari; non avevo mai sentito parlare di tutto questo.
    Comunque ho trovato questa dispensa che a partire dalla pagina 27 parla della realizzazione di una pila con scherma realizzativo con side-effect.
    C'è poi la stessa pila implementata con schema realizzativo funzionale (con condivisione).
    E' tutto in Java ma potrebbe esserti utile per capire la differenza fra i due schemi.
  • Re: Linguaggio C, Pila

    Grazie
  • Re: Linguaggio C, Pila

    Guarda, mi ha risposto poco fa:

    senza condivisione (di memoria) sta ad indicare che le strutture dell'esercizio non condivideranno nodi tra loro. Questo perchè, avendo scelto come schema realizzativo quello con side effect, nel momento in cui venisse applicata una modifica su un nodo di una struttura, anche tutte le altre che condividono quel nodo la subirebbero, e si avrebbe il fenomeno dell'interferenza.
    Per evitare questo problema si chiede quindi di realizzare la funzione con side effect e senza condivisione di memoria.


    Senza nodo come faccio a collegare la pila?!
  • Re: Linguaggio C, Pila

    Secondo me devi solo implementare una semplice pila utilizzando l'array pila[MaxPila].
    Non avendo però una preparazione universitaria, lascio a chi ne sa più di me
Devi accedere o registrarti per scrivere nel forum
6 risposte