• Non ci sono risultati.

Reti di calcolatori

N/A
N/A
Protected

Academic year: 2021

Condividi "Reti di calcolatori"

Copied!
4
0
0

Testo completo

(1)

Nome Cognome Matricola_______________________________

Reti di calcolatori

Prova scritta – 23 luglio 2014

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per la raccolta dei giudizi su un insieme di prodotti. Il servizio prevede le seguenti pagine:

1. Un form in cui si può scegliere il prodotto da valutare da un menu a scelta singola, le caratteristiche valutate da un menu a scelta multipla e inserire il grado di preferenza (un punteggio intero da 1 a 4) con un radio button. Il form permette di specificare un insieme di caratteristiche per uno stesso prodotto ad ogni invio. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“Frullatore”, ”Tostapane”, ”Mixer”, ”Spremiagrumi”) per i prodotti e (“Design”, “Usabilità”,

“Prezzo”, “Affidabilità”, ”Complessiva”) per le caratteristiche.

2. Una pagina di raccolta dei dati che memorizza sul server gli inserimenti fatti col form di cui al punto 1 nella stessa sessione di lavoro. Per ogni prodotto e caratteristica si devono memorizzare il numero di valutazioni e il totale dei voti assegnati.

3. Una pagina di riepilogo che stampa una tabella con la media delle valutazioni per ogni opzione prodotto-caratteristica per cui sono state memorizzate valutazioni. Si riportano per ogni caratteristica i prodotti che hanno ottenuto la valutazione media più alta. Infine si stampa la lista dei prodotti che non hanno ricevuto almeno 10 valutazioni su almeno una caratteristica.

Si scrivano il form e le due pagine di raccolta dati e riepilogo usando HTML/PHP. Si supponga di utilizzare il metodo POST nel form.

Esercizio 2 [2 punti]

Dato il seguente codice PHP

$v[] = 2.1;

$v[] = “1${v[0]}2”;

$v[] = ’2${v[1]}1’;

$a = $v[1].$v[0];

$a += $v[2];

indicare quali sono le variabili definite nell’interprete dopo l’esecuzione del codice, con il loro tipo e valore.

Esercizio 3 [punti 5]

Si vuole definire un formato per l’interscambio dati relativo alla produzione di pasta in un’industria

alimentare. Il file scambiato specifica la lista degli stabilimenti. Ciascuno stabilimento è identificato

da un codice numerico (integer) ed ha associata la località in cui si trova (string) e una lista dei tipi

di pasta che può produrre. Per ogni tipo di pasta si specifica l’identificatore (integer), il nome

(string) e la lista dei lotti prodotti. Ogni lotto è identificato da un numero seriale (integer), dal peso

totale (decimal) e dalla data in cui è stato spedito (date). Si proponga la struttura XML necessaria,

mostrando un esempio, e si scriva il file XML schema associato.

(2)

Esercizio 4 [punti 4]

Dato il seguente schema di rete

scegliere la configurazione di rete dell’host 8 (IP, netmask e configurazione di routing) e indicare il contenuto delle tabelle di routing del router R1.

Esercizio 5 [punti 5]

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su una cella di una tabella, la cella viene selezionata colorando il bordo di rosso (borderColor assume il valore “red”). Se si clicka una seconda cella, la cella precedente viene deselezionata e il suo bordo torna al colore iniziale (borderColor assume il valore “initial”). Quando poi si clicka su un paragrafo (elementi <P>) il suo contenuto HTML viene copiato nella cella selezionata (se non è selezionata nessuna cella non accade nulla).

Esercizio 6 [punti 5]

Spiegare cosa sono gli indirizzi IP privati e illustrare la soluzione adottata per accedere a risorse nella rete pubblica da una rete privata.

--- Recupero prima prova --- Svolgere

• Esercizio 1 (PHP) [14 punti]

• Esercizio 2 (PHP) [4 punti]

Rispondere alle seguenti domande

1. Illustrare i meccanismi con cui è possibile individuare il server di competenza per la risoluzione di un nome DNS. [6 punti]

2. Illustrare la modalità con cui i parametri di un form HTML sono inviati nella richiesta HTTP quando è utilizzato il metodo GET. [6 punti]

--- Recupero seconda prova --- Svolgere

• Esercizio 3 (XML) [punti 8]

• Esercizio 4 (indirizzi IP) [punti 6]

• Esercizio 5 (javascript) [punti 8]

• Esercizio 6 (domanda) [punti 8]

Host 1 Host 2

Host 3 Host 4

Host 5

Host 6

Host 7 Host 8 Host 9

Host 10

Internet

R4

R2

R3 R1

192.168.1.0/25 serial 0

serial 0

serial 0 eth 0

eth 0

eth 0

eth 0 eth 1

eth 1 eth 1

Host 11

eth 1 172.28.3.54

200.5.11.33 192.168.1.1

200.5.11.96/27

200.5.11.97

172.28.3.52/30

200.5.11.32/27 192.168.1.3

192.168.1.2

172.28.3.53

200.5.11.128/27 200.5.11.129

51.168.0.0/13 51.168.1.1

51.104.0.0/13 51.104.1.1

(3)

Nome Cognome Matricola_______________________________

Reti di calcolatori

Prova scritta – 23 luglio 2014

Esercizio 1 [9 punti]

Si vuole realizzare un servizio Web per la raccolta delle donazioni per un comprensorio scolastico.

Il servizio prevede le seguenti pagine:

1. Un form in cui si può scegliere la scuola a cui effettuare la donazione da un menu a scelta singola, la destinazione della donazione da un menu a scelta multipla e l’importo della donazione (con valori 5, 10, 15, 20) con un radio button. Il form permette di specificare un insieme di destinazioni d’uso per uno stessa scuola ad ogni invio. Le opzioni dei menù devono essere generate dinamicamente a partire da array. Si assuma un array che contiene la lista (“Infanzia”, ”Primaria A”, ”Primaria B”, ”Secondaria”) per le scuole e (“Materiale”, “Manutenzione”, “Arredi”, “Attività”, ”Sport”) per le destinazioni.

2. Una pagina di raccolta dei dati che memorizza sul server gli inserimenti fatti col form di cui al punto 1 nella stessa sessione di lavoro. Per ogni scuola e destinazione si devono memorizzare il numero di donazioni e il totale degli importi.

3. Una pagina di riepilogo che stampa una tabella con la media delle donazioni per ogni opzione scuola-destinazione per cui sono state fatte offerte. Si riportano per ogni scuola le destinazioni che hanno ottenuto la donazione media più alta. Infine si stampa la lista delle scuole che hanno ricevuto più di 100 euro di donazione totale su almeno una destinazione.

Si scrivano il form e le due pagine di raccolta dati e riepilogo usando HTML/PHP. Si supponga di utilizzare il metodo POST nel form.

Esercizio 2 [2 punti]

Dato il seguente codice PHP

$z[] = 1.3;

$z[] = ‘1${z[0]}3’;

$z[] = “3${z[0]}1”;

$a = $z[0]+$z[1];

$a .= $z[2];

indicare quali sono le variabili definite nell’interprete dopo l’esecuzione del codice, con il loro tipo e valore.

Esercizio 3 [punti 5]

Si vuole definire un formato per l’interscambio dati relativo alla gestione di una flotta di

pescherecci. Il file scambiato specifica la lista dei pescherecci. Ciascun peschereccio è identificato

da un codice numerico (integer) ed ha associato il nome (string) e una lista dei tipi di pesce che

può pescare. Per ogni tipo di pesce si specifica il nome (string), la tipologia (es. “crostaceo”, string)

e la lista delle pescate. Ogni pescata è identificata da un numero seriale (integer), dal peso del

pesce (decimal) e dal giorno in cui è stata effettuata (date). Si proponga la struttura XML

necessaria, mostrando un esempio, e si scriva il file XML schema associato.

(4)

Esercizio 4 [punti 4]

Dato il seguente schema di rete

scegliere la configurazione di rete dell’host 11 (IP, netmask e configurazione di routing) e indicare il contenuto delle tabelle di routing del router R3.

Esercizio 5 [punti 5]

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un paragrafo (tag <P>), il paragrafo viene selezionato colorando il suo sfondo di giallo (backgroundColor assume il valore “yellow”). Se si clicka un secondo paragrafo, il paragrafo precedente viene deselezionato e il suo sfondo torna al colore iniziale (backgroundColor assume il valore “initial”). Quando poi si clicka sulla cella di una tabella (elementi <TD>) il contenuto HTML del paragrafo selezionato viene copiato nella cella (se non è selezionato nessun paragrafo non accade nulla).

Esercizio 6 [punti 5]

Illustrare i meccanismi con cui è possibile individuare il server di competenza per la risoluzione di un nome DNS.

--- Recupero prima prova --- Svolgere

• Esercizio 1 (PHP) [14 punti]

• Esercizio 2 (PHP) [4 punti]

• Esercizio 6 (domanda) [6 punti]

Rispondere alla seguente domanda

1. Illustrare la modalità con cui i parametri di un form HTML sono inviati nella richiesta HTTP quando è utilizzato il metodo GET. [6 punti]

--- Recupero seconda prova --- Svolgere

• Esercizio 3 (XML) [punti 8]

• Esercizio 4 (indirizzi IP) [punti 6]

• Esercizio 5 (javascript) [punti 8]

Rispondere alla seguente domanda

• Spiegare cosa è lo standard DOM evidenziando l’utilità che ha nella programmazione client-side. [punti 8]

Host 1 Host 2

Host 3 Host 4

Host 5

Host 6

Host 7 Host 8 Host 9

Host 10

Internet

R4

R2

R3 R1

10.56.0.0/13 serial 0

serial 0

serial 0 eth 0

eth 0

eth 0

eth 0 eth 1

eth 1 eth 1

Host 11

eth 1 192.168.3.33

197.7.77.129 10.56.1.1

197.7.77.64/26

197.7.77.65

192.168.3.32/30

197.7.77.128/26 10.56.1.3

10.56.1.2

192.168.3.34

147.44.64.0/19 147.44.64.1

147.44.192.0/19 147.44.192.1

147.44.96.0/19 147.44.96.1

Riferimenti

Documenti correlati

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un elemento di una lista (tag LI) questo

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: cliccando su una delle celle di una tabella predefinita il suo

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un elemento di tipo &lt;div&gt; se la sua classe è

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: clickando su un elemento di tipo &lt;div&gt; questo viene

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: data una tabella con celle con contenuto di testo assegnato,

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: entrando con il cursore in un elemento di tipo &lt;p&gt;

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: quando si passa sopra una riga di una tabella (elemento

Si scriva il codice javascript necessario ad implementare la seguente funzionalità in una pagina HTML: scrivendo in un campo di testo predefinito il nome di una