Shireenx
14-02-2014, 20:23
Buona sera a tutti, qualcuno sarebbe così gentile da aiutarmi con un esercizio sulle liste dinamiche?
Il magazzino della EmmePi SpA è suddiviso in settori, in base al reparto in cui i beni sono
impiegati. Vi viene commissionata l’implementazione della funzione GiacenzaElevata che
riceve come parametro il nome del reparto e due liste. La prima lista contiene il codice del
prodotto (stringa di 15 caratteri), il nome del reparto di appartenenza e il prezzo del prodotto. La
seconda lista contiene il codice del prodotto (stringa di 15 caratteri), il codice del magazzino
(numerico) e la giacenza, nel magazzino (un prodotto può essere presente in più magazzini).
La funzione restituisce il numero di prodotti del reparto indicato che hanno una giacenza
complessiva superiore alle 100 unità e una giacenza minima in ciascun magazzino superiore alle 10
unità.
Facendo esercizi sulle liste, quasi sempre ho dovuto implementare una sola struttura dati, ma in questo bisogna metterne 2 e ciò mi sta causando problemi :\ . Io l'ho iniziato in questo modo ma sicuramente è sbagliato:
struct node1{
char codiceprod[15];
char reparto[20];
float prezzo;
node1* next;
};
struct node2{
char codiceprod2[15];
int codmag;
int giacenza;
node2 * next;
};
int GiacenzaElevata (char nomereparto[], node1* head, node2* head2);
Il codice scritto da me sicuramente non ha senso poichè non capisco come posso collegare la prima lista con la seconda in modo da poterle implementare nella funziona.
Il magazzino della EmmePi SpA è suddiviso in settori, in base al reparto in cui i beni sono
impiegati. Vi viene commissionata l’implementazione della funzione GiacenzaElevata che
riceve come parametro il nome del reparto e due liste. La prima lista contiene il codice del
prodotto (stringa di 15 caratteri), il nome del reparto di appartenenza e il prezzo del prodotto. La
seconda lista contiene il codice del prodotto (stringa di 15 caratteri), il codice del magazzino
(numerico) e la giacenza, nel magazzino (un prodotto può essere presente in più magazzini).
La funzione restituisce il numero di prodotti del reparto indicato che hanno una giacenza
complessiva superiore alle 100 unità e una giacenza minima in ciascun magazzino superiore alle 10
unità.
Facendo esercizi sulle liste, quasi sempre ho dovuto implementare una sola struttura dati, ma in questo bisogna metterne 2 e ciò mi sta causando problemi :\ . Io l'ho iniziato in questo modo ma sicuramente è sbagliato:
struct node1{
char codiceprod[15];
char reparto[20];
float prezzo;
node1* next;
};
struct node2{
char codiceprod2[15];
int codmag;
int giacenza;
node2 * next;
};
int GiacenzaElevata (char nomereparto[], node1* head, node2* head2);
Il codice scritto da me sicuramente non ha senso poichè non capisco come posso collegare la prima lista con la seconda in modo da poterle implementare nella funziona.