settima esercitazione

OTTAVA ESERCITAZIONE AUTOGUIDATA

Obiettivi dell'esercitazione:esercitarsi nell'uso delle strutture

ESERCIZIO

Scrivere un programma per la gestione delle informazioni relative ai voli giornalieri in partenza da un certo aeroporto.
In particolare gestire le variazioni per l'orario di partenza e il numero di posti liberi.

(soluzione nel file voli.c)

Si assuma che le informazioni siano memorizzate in un vettore di record.

Ogni record contiene le seguenti informazioni:
  1. numero del volo (es. AZ124)
  2. orario di partenza (espresso in ore e minuti) [record]
  3. numero di posti liberi
  4. destinazione del volo.

Scrivere tre moduli che realizzino le seguenti operazioni:
  • Cambio dell'orario di un volo CambiaOrario
  • Aggiornamento dei posti liberi in un volo AggiornaPosti
  • Stampa del vettore contenente tutti i record relativi ai dati dei voli giornalieri in partenza StampaVoli

L'esercizio consiste nello specificare
  • i tipi di dati da utilizzare per rappresentare le informazioni di interesse
    (cioè l'orario, il volo e l'insieme dei voli giornalieri in partenza da un aeroporto),
  • i prototipi per le funzioni che realizzano le operazioni richieste, individuando
    • i parametri che devono essere passati,
    • il modo in cui devono essere passati,
    • il tipo del valore restituito
  • le definizioni delle funzioni.
Per verificare che le funzioni lavorino correttamente scrivete un programma che le utilizzi strutturato nel modo seguente.
Si supponga che il programma lavori interattivamente con un operatore e che tale operatore abbia la possibilità di richiedere tre opzioni:
  1. la modifica dell'orario di un volo
  2. l'aggiornamento dei posti liberi di un volo
  3. la fine delle operazioni

Questa modalità può essere realizzata utilizzando un ciclo che richiede all'operatore un carattere, fino a quando l'operatore non inserisce il carattere corrispondente alla fine delle operazioni.

Nel caso in cui l'operatore scelga una delle prime due opzioni, il programma deve chiedere all'operatore di inserire i dati che servono per completare l'operazione ( ad es. numero del volo e nuovo orario del volo).

Per poter provare la correttezza del programma su un insieme di dati, inizializzate il vettore dei voli giornalieri al momento della definizione della variabile con i dati di 5 voli a scelta.

esempio
volo n° destinazione partenza posti liberi
AZ111 milano 12:34 23
AZ222 buenos aires 12:55 245
BA333 toronto via amsterdam 4:15 20
KLM444 santiago del cile 10:12 100
QW555 bali 21:48 65