nikpez
Ominide
1 min. di lettura
Vota 4 / 5

Concetti Chiave

  • La struttura dati definisce una collezione di foglie secche usando un array di massimo 50 elementi, ognuno rappresentato da una specie e una quantità.
  • Il programma C consente l'inserimento di una foglia nell'elenco, evitando duplicati e incrementando la quantità se la specie è già presente.
  • Se la foglia non è presente nell'elenco, viene inserita come nuovo elemento con la quantità inizializzata a 1.
  • La funzione insertFoglia() si avvale della funzione ricercaFoglia() per determinare se una specie è già presente nell'elenco.
  • Il programma include la gestione degli errori per garantirne il corretto funzionamento anche in situazioni limite.

Esercizio C - Funzioni e struct

Data le seguenti dichiarazioni che descrivono una struttura dati per memorizzare una collezione di foglie secche:
#define MAX_DATI 50
typedef char string [40];
typedef struct {
string specie; //specie botanica
int quant; } //quantità
tFoglia;
typedef struct {
tFoglia dati [MAX_DATI];
int numEff;
}tElencoFoglie;
Con riferimento alla struttura di cui sopra, scrivete un pgm C che esegue l’inserimento di una foglia nell’elenco.

Attenzione, però: non vogliamo che i doppioni occupino posti diversi, ma vogliamo comunque contare accuratamente tutte le foglie. I casi sono quindi due: se la foglia è già presente nell’elenco si deve incrementare il corrispondente quantitativo di 1 unità; se invece non è presente va inserita come nuovo elemento (e in questo caso il relativo quantitativo deve essere posto a 1).
La funzione insert Foglia() utilizza la funzione ricercaFoglia() anch’essa da codificare.
Gestire opportunamente le situazioni di errore.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community