• Non ci sono risultati.

Il programma deve accettare due modalit`a di invocazione, in funzione del valore del primo parametro sulla linea di comando: 1

N/A
N/A
Protected

Academic year: 2021

Condividi "Il programma deve accettare due modalit`a di invocazione, in funzione del valore del primo parametro sulla linea di comando: 1"

Copied!
1
0
0

Testo completo

(1)

Esame di Fondamenti di Informatica

(Ing. Gestionale, Logistica e Produzione, Organizzazione)

Prova scritta di programmazione (14 giugno 2010)

Realizzare un programma in linguaggio C per gestire le scadenze di pagamento di un insieme di fatture di un’azienda. L’elenco delle fatture dell’anno corrente `e memorizzato in un file di testo, chiamatofatture.txt, che contiene una riga per ogni fattura, nel seguente formato:

datains datascad importo causale dove:

• datains `e la data di inserimento della fattura;

• datascad `e la data di scadenza della fattura;

• importo `e l’importo da pagare, espresso in Euro come numero reale positivo, con 2 cifre decimali;

• causale `e la motivazione della fattura, espressa come una stringa priva di spazi di lunghezza massima pari a 30 caratteri.

Le date sono espresse come numero intero compreso tra 1 e 366 (corrispondente al numero del giorno nell’an- no). Non `e possibile ipotizzare un numero massimo di righe per il file.

Il programma deve accettare due modalit`a di invocazione, in funzione del valore del primo parametro sulla linea di comando:

1. se il primo parametro sulla linea di comando `e pari a add, allora devono essere presenti ulteriori 3 parametri: il numero di giorni entro cui la fattura scadr`a (ad esempio, se vale 30, la fattura dovr`a essere pagata entro 30 giorni dalla data odierna), l’importo della fattura e la causale della stessa. Il programma in questo caso dovr`a aggiungere al file una nuova riga contenente le informazioni relative a questa fattura.

2. se il primo parametro sulla linea di comando `e pari a list, allora deve essere presente un ulteriore parametro, che rappresenta un numero G di giorni (ad esempio 7). In tal caso il programma dovr`a stampare importo e casuale di tutte le fatture che scadono nei prossimi G giorni (ad esempio nei prossimi 7 giorni).

Nota: per conoscere la data odierna, si pu`o utilizzare la funzione dichiarata comeint oggi(void), la quale restituisce il numero intero (tra 1 e 366) del giorno dell’anno corrispondente.

Esempio. Supponiamo che il programma si chiami fatture.exee che il filefatture.txt abbia inizial- mente il seguente contenuto:

160 180 120.50 Trasloco 140 195 200.00 Pulizie

Attivando il programma col comando:

fatture add 30 310.15 Manutenzione

si aggiunger`a una fattura con scadenza a 30 giorni. Supponendo che la data odierna corrisponda al giorno 164, la fattur`a scadr`a il giorno 194 (164+30), ed il file verr`a modificato come segue:

160 180 120.50 Trasloco 140 195 200.00 Pulizie 164 194 310.15 Manutenzione

Attivando invece il programma col comando:

fatture list 20

verranno stampate le fatture in scadenza tra il giorno odierno (164) ed i 20 giorni successivi (184):

120.50 Trasloco

Riferimenti

Documenti correlati

• Ci dicono che un certo treno percorre una certa tratta in 45 minuti in media, con deviazione pari a 2 minuti (che non mettiamo in dubbio).. A priori `e chiaro che il vero tempo

biplot(PCA) summary(PCA) plot(PCA)

14.. sono punti di discontinuit`a eliminabile. a)La funzione f ha due punti angolosi in x = ±1, come si vede facilmente anche disegnandone il grafico... Si pu`o quindi applicare

Qualora il programma venisse attivato con un secondo parametro sulla linea di comando, allora il calcolo delle vincite dovr`a essere ristretto alle sole vincite che sono avvenute

Ciascun alloggio `e identificato da un numero intero (il numero dell’interno) compreso tra 1 ed il numero massi- mo di alloggi presenti (valore specificato come primo parametro

• se il secondo argomento sulla linea di comando ` e -p (province), allora ci dovr`a essere un terzo argomento corrispondente al nome di una regione: in questo caso dovranno

Un file di testo contiene i dati sulle precipitazioni (in millimetri) relativi a ciascun mese di svariati anni..

Il programma elabora un file di testo, il cui nome `e passato come primo parametro sulla linea di comando, che contiene i dati di tutte le giocate fatte.. Tale file contiene un