Salta ai contenuti. | Salta alla navigazione

Strumenti personali

Testo prova C

HTML icon esercizio1.htm — HTML, 4 kB (4563 bytes)

Contenuto del file

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
	<TITLE>FONDAMENTI DI INFORMATICA II (Prof Lamma)</TITLE>
</HEAD>
<BODY LANG="en-GB" TEXT="#000000" DIR="LTR">
<DIV TYPE=HEADER>
	<P LANG="it-IT" STYLE="margin-left: 4cm; font-weight: normal"><BR>
	</P>
</DIV>
<h1 LANG="it-IT" CLASS="western" ALIGN=CENTER>
FONDAMENTI DI INFORMATICA (II, modulo B, A+B)  <br>(2h,
punti 30/30)  22 Giugno 2011</h1>
<P LANG="it-IT" STYLE="font-weight: normal"><BR>
</P>
<H2 LANG="it-IT" CLASS="western">Esercizio 2: PROGRAMMAZIONE IN C
(punti 20)</H2>

<P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="font-weight: normal">
<FONT SIZE=3>Un file di testo (<a href="film.txt">film.txt</a>) contiene record
relativi a produzioni cinematografiche (si sa che sono al massimo
30). Ogni linea riporta, per ciascun progetto cinematografico, un
codice del film (valore numerico intero),  nome del regista, budget
richiesto (valore numerico intero). Un secondo file testo
(<a href="preventivi.txt">preventivi.txt</a>) riporta le spese preventivate da ciascuna
produzione, sono riportati il codice del film, il nome del
produttore, la sua offerta di spesa (valore numerico intero). Per lo
stesso progetto cinematografico ci possono essere state più offerte
di produttori diversi, </FONT><FONT SIZE=3><B>e ve ne è almeno una</B></FONT><FONT SIZE=3>.</FONT></FONT></P>
<P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="font-weight: normal">
<FONT SIZE=2><FONT SIZE=3>I nomi (di regista e produttore) sono
stringhe di al massimo 20 caratteri. </FONT>
</P>

<P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="font-weight: normal">
<FONT SIZE=2><FONT SIZE=3>Si scriva un programma C organizzato in
(almeno tre) funzioni invocate dal <code>main</code> e dedicate rispettivamente a:</FONT></FONT></P>

<OL>
	<LI><P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="margin-top: 0.18cm; margin-bottom: 0.18cm; font-weight: normal">
	<FONT SIZE=3>Per ogni record letto dal primo file,
	cerchi nel secondo file l'elemento che ha lo stesso codice film e
	l'offerta di spesa maggiore e restituisca una struttura composta
	dai campi: codice del film, nome del regista, budget richiesto, nome
	del produttore (che ha fatto l'offerta maggiore) e la sua offerta.
	Tale funzione ha come parametri un puntatore a file e un elemento;
	restituisce un tipo <code>struct</code>
	da definire in base ai campi indicati e richiesti;</FONT></P>
	<LI><P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="margin-top: 0.18cm; margin-bottom: 0.18cm; font-weight: normal">
	<FONT SIZE=2><FONT SIZE=3>Inserisca poi la struttura restituita in
	un albero binario di ricerca T, ordinato sul campo codice; tale
	funzione ha come parametri la struttura restituita dal punto
	precedente, il puntatore all'albero T (più eventuali altri a
	scelta) e  restituisce il puntatore all'albero creato;</FONT></FONT></P>
	<LI><P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="margin-top: 0.18cm; margin-bottom: 0.18cm; font-weight: normal">
	<FONT SIZE=2><FONT SIZE=3>Stampi ordinatamente in base al codice del
	film  il contenuto dell'albero T su un file di tipo testo
	(OUTPUT.TXT, da consegnare con i sorgenti ed eseguibile), che
	riporta, per ciascuna riga, il codice del film, il nome del regista,
	il budget richiesto, il nome del produttore (che ha fatto l'offerta
	maggiore) e la sua offerta. Tale funzione ha come parametri il
	puntatore al file di uscita e il puntatore all'albero T (più
	eventuali altri a scelta) e  restituisce <code>void</code>.</FONT></FONT></P>
	<LI><P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="margin-top: 0.18cm; margin-bottom: 0.18cm; font-weight: normal">
	<FONT SIZE=2><FONT SIZE=3><B>Per chi svolge il compito A+B:
	</B></FONT><FONT SIZE=3>Inserisca in un vettore V</FONT><FONT SIZE=3><B>
	</B></FONT><FONT SIZE=3>ordinato sul campo codice film gli elementi
	dell'albero T che hanno il campo budget maggiore del campo
	offerta. Tale funzione ha come parametri il puntatore all'albero T
	e il vettore V (più eventuali altri a scelta) e  restituisce un <code>int</code>
	che rappresenta il numero di elementi inseriti in V (facoltativo: si
	stampi a video poi il contenuto del vettore).</FONT></FONT></P>
</OL>
<P LANG="it-IT" CLASS="western" ALIGN=JUSTIFY STYLE="margin-left: 1cm; margin-top: 0.18cm; margin-bottom: 0.18cm; font-weight: normal; page-break-before: always">
<BR><BR>
</P>

</BODY>
</HTML>