Ing Gestionale
mercoledi’ 11/07/2012
FONDAMENTI -INFO
Esame Finale(9 crediti)
Prof. M. Angelaccio
90 minuti
Istruzioni.
1. Rispondere a tutte le domande scrivendo negli spazi indicati usando eventualmente il retro del foglio
previa indicazione
2. Scrivere chiaramente e in modo sintetico i passaggi intermedi ove necessario, si preferiscono risposte
schematiche ma complete.
3. NON usare penna rossa
4. NON consultare appunti o libri, e NON comunicare
5. la durata è di 90 min. (45 minuti per ciascuna parte)
6. il candidato ha tempo 5 minuti per decidere di non consegnare e ritornare (automaticamente) al
secondo appello di luglio
7. i risultati e le modalità di verbalizzazione verranno pubblicate su internet ai siti di didattica di ateneo
(http://www.uniroma2.it/didattica/FondamentiInfo/deposito/) e del corso (http://dist.info.unir
8. i gravemente insufficienti (< 10/30) devono ripetere l’esame a Settembre.
FondamentiInformatica-11/07/2012 Cognome :
Nome:
Mat:
I [5 min.] Quali sono i ruoli di un Sistema Operativo ? (max 10 parole)
..................................................................................................................................................
II [5 min.] Qual’è il minimo numero intero rappresentabile in modulo e segno con un byte ?
Risposta:
0
-8
-127
-7
-255 E perchè ? ............................................................................................
III [8 min.] Sia a l’array ordinato dei numeri di due cifre diverse e formati combinando le cifre 1,2 e 3.
Definizione a = ............................ Cosa stampa a[a[1]- a[0]]? .......................
IV [12 min.] Visualizzare la settimana in corso nel formato "DDD" n (vedi Test).
weekCalendar.rb (da completare):
Test:
week = ["LUN", "MAR", "MER", "GIO", "VEN", "SAB", "DOM"]
>
>
>
>
>
>
>
>
ruby weekCalendar.rb
LUN 9
MAR 10
MER 11
GIO 12
VEN 13
SAB 14
DOM 15
for .............................................
puts ...........................
end
1. Quale valore di i in week[i] corrisponde al mercoledi’ ?
3
MER
ME
2
4
2. Cosa restituisce week.sort ?
Risposta: ..................................................................................................................................................
V [15 min.] Una persona è composta da nome e cognome, e uno studente è una persona con matricola
(numero intero). Ad ogni studente è associato libretto dato da una lista di voti. Definire le due classi con i
metodi accessori per i dati anagrafici e il libretto ed un metodo insertVoto specifico per studente. Applicare a
due variabili completando l’esempio d’uso.
# uso di Persona e Studente
# Definizione di Persona
class Persona
#creazione di una persona -> Mario, Rossi
p= ...............
#Creazione di studente Mario, Rossi con matricola 1200
end
# Definizione di Studente
class Studente
s= .........................
#inserimento di 30 e 18 nel libretto di Mario Rossi
puts ..............#stampa del libretto di Mario Rossi
end
FondamentiInformatica-11/07/2012 Cognome :
Nome:
Mat:
I [5 min.] Quali sono le 6 fasi del ciclo di esecuzione del Sistema Calcolatore ?
1...................2..........................3..........................4.............................5........................6.................
II [5 min.] Qual’è il minimo numero intero rappresentabile in modulo e segno con 12 bit ?
Risposta:
0
-11
-2047
-12
-4095 E perchè ? ............................................................................................
III [8 min.] Sia pari l’array dei numeri pari formati da una sola cifra decimale.
Definizione pari = ................... Cosa stampa puts (pari.to s).to i ? .......................
IV [12 min.] L’IRPEF viene calcolata con il seguente metodo (basato su 5 aliquote):
da
da
da
da
da
0 a 15.000 euro: 23% di aliquota IRPEF 2012
15.001 a 28.000 euro: 3.450 euro + 27% dell’eccedente della prima aliquota
28.001 a 55.000 euro: 6.960 euro + 38% dell’eccedente della seconda aliquota
55.001 a 75.000 euro: 17.220 euro + 41% dell’eccedente della terza aliquota
75.001 a salire: 25.420 euro + 43% dell’eccedente della quarta aliquota
1. Quale tra le seguenti espressioni verifica se una variabile importo appartiene alla seconda aliquota ?
(15001..28000).include?importo
importo in (15001..28000)
if (importo > 15000)
2. Scrivere un programma calcolaAliquota.rb che calcola l’Aliquota di un importo (vedi Test).
Test:
> ruby calcolaAliquota.rb
calcolaAliquota.rb(da Completare):
aliquote = [.....................................................................]
importo = ........................... #lettura importo
> input: importo: 18500
> ALIQUOTA= 2,
> input: importo: 30000
> ALIQUOTA = 3,
puts "input: importo:.................................."
#calcolo aliquota di importo
con scansione da aliquote
.....................................................
.....................................................
puts "ALIQUOTA = ......................."
V [15 min.] Usare la classe Point con ascissa e ordinata (x e y) per definire come sua sottoclasse oggetti di tipo
Circle in cui x e y sono le coordinate del centro e r il valore del raggio. Scrivere i metodi accessori e il metodo
circonferenza per Circle (usare la costante Math.PI).Applicare a due variabili completando l’esempio d’uso.
# uso di Point e Circle
# Definizione di Point
class
# creazione di un punto di coordinate unitarie
p = ................
# creazione di un cerchio di centro
end
# Definizione di Circle
class
p e raggio 1/2
c = ................
# stampa
lunghezza circonferenza di c
............................
# stampa area di c
end
puts .................
#(perchè non è Math.PI*r**2?..........................)
FondamentiInformatica-11/07/2012 Cognome :
Nome:
Mat:
I [5 min.] Che cosa calcola il seguente programma in linguaggio macchina composto da 7 istruzioni memorizzate
nelle locazioni (0..6)?
LOA 7 ADD 8 STO 10 LOA 9 ADD 10 STO 11 STP 0
Risposta: Calcola la somma dei numeri .........................................................................................................
II [5 min.] Qual’è il minimo numero intero rappresentabile in modulo e segno con 10 bit ?
0
-9
-511
-10
-1023 E perchè ? ............................................................................................
III [8 min.] Sia a l’array ordinato dei numeri di due cifre diverse e formati combinando le cifre 2,3 e 4.
Definizione a = ............................ Cosa stampa a[a[1]- a[0]]? .......................
IV [12 min.] Il coefficiente di correlazione rs di Spearman misura la correlazione tra scale di valori (ranghi). La
formula è espressa a sinistra come funzione della somma delle differenze tra tutte le coppie di ranghi. Completare
a destra la definizione di funzione che calcola rs per una coppia di ranghi.
# definizione di funzione (da completare)
def f(a,b)
coeff=0
for i in (1..n)
temp[i]= (a[i]-b[i])**2/(n*(n**2-1))
end
rs = 1 − 6
n
X
(xi − yi )2
1
n(n2 − 1)
coeff=1-6*sum(temp)
Ad esempio per
x = (1, . . . , 10)
return coeff
end
# test di esempio
(da completare)
y = (6, 2, 3, 4, 5, 7, 9, 8, 1, 10])
→ rs = 0, 4303
x = ......................
y = [6,2,3,4,5,7,9,8,1,10]
puts f(x,y) # ---> 0.4303
V [15 min.] Una persona è composta da nome e cognome, e uno conto nominativo è una persona con nunmero di
conto numconto (numero intero). Ad ogni conto nominativo è associato saldo dato da una variabile di saldo su
cui sono effettuate le operazioni di prelievo e deposito. Definire le due classi con i metodi accessori per i dati
anagrafici e il saldo. Applicare a due variabili completando l’esempio d’uso.
#creazione di una persona -> Mario, Rossi
# Definizione di Persona
class Persona
p= ...............
#Creazione di conto con numero 3333 e anagrafica di p
end
# Definizione di conto nominativo
class Conto
c= .........................
# depositi di 1000 e 500 e prelievo di 200
end
puts .................#stampa saldo di Mario Rossi
FondamentiInformatica-11/07/2012 Cognome :
Nome:
Mat:
VI[5 min.]Quali sono le Applicazioni e i dati scambiati nel protocollo di comunicazione HTTP?
Risposta: Applicazioni ..................................................................................................................
Risposta: Dati scambiati ................................................................................................................
VII [5 min.] A cosa serve il tag FORM in HTML ?
Formattare il paragrafo
Inserire una Formula Comunicare dati a server-script
Comunicare dati al browser
VII [10 min.] Completare la definizione di client e server TCP per l’esempio di comunicazione Client-Server
in localhost della lettura dell’orologio del server, specificando le parti che realizzano le operazioni di apertura e
chiusura sessione e usando l’indirizzo locale e il numero di porta 12345.
require "socket"
require "socket"
server = ................
while session = server.accept
client= ...................
msg = ..................
while msg= client.gets
...............
puts msg
end
..............
client.close
end
IX [20 min.] Completare HTML mancante nella pagina di sistema solare seguente e rispondere alle domande.
Completare
Completare (max 12 parole per ciascuna domanda)
<html>
<body>
<b>Il Sistema Solare</b> <p>
<hr WIDTH="100%">
<br><a NAME="menu"></a><b>Indice</b>
1) Cosa significa
#terra ?
......................................................
<ul>
<li><a href="#terra">La terra</a></li>
<li><a href="#luna">La luna</a></li>
<li><a href="#marte">Marte</a></li>
</ul>
<hr WIDTH="100%">
<br><a NAME="terra"></a><b>La terra</b>
<a href="terra.jpg">
<img SRC="terra.jpg" height=150 width=150 ></a>
(<b>Nota: </b>si puo’ cliccare sull’immagine
per andare alla figura con le dimensioni originali)
<p> <a href=".......">Torna al menu principale</a>
<br><a NAME="......."></a><b>La luna</b>
<br><b>....</b>
<p><a href="lunar.jpg">
<img SRC="lunar.jpg" height=144 width=101></a>
<p><img SRC="top_arrow.gif" height=16 width=16>
<a href=".......">Torna al menu principale</a>
<p><a NAME="......."></a><b>Marte</b> <br>...
<p><a href="marte.jpg">
<img SRC="marte.jpg" height=70 width=99></a> <br>
<p> <a href=".......">Torna al menu principale</a>
<p>
<hr WIDTH="100%">
</body>
</html>
2) Cosa significa
<hr WIDTH="100%"> ?
......................................................
3) Quante e quali voci ha il menu indice ?
......................................................
Qual’è la differenza tra
<a NAME= "terra" > e <a href="terra.jpg"> ?
......................................................
Scarica

mercoledi` 11/07/2012 Esame Finale(9 crediti) 90 minuti