ESERCITAZIONE di INFORMATICA 2011/2012 Torneo di calcetto

Transcript

ESERCITAZIONE di INFORMATICA 2011/2012 Torneo di calcetto
ESERCITAZIONE di INFORMATICA
2011/2012
HTML
1) Creare una pagina html per visualizzare i risultati di un torneo di calcetto.
La struttura della pagina dovrà rispecchiare quanto segue:
Torneo di calcetto
Informazioni generali
Il torneo si tiene a … in data …
Squadre partecipanti
•
Juve
•
Milan
•
Inter
Calendario delle partite
Data
Squadra in casa Squadra fuori casa Risultato
24.05.12 Milan
Juve
0-1
25.05.12 Inter
Milan
1-1
2) Dire se la seguente pagina HTML è conforme al linguaggio. Se non lo è effettuare le opportune
correzioni.
<html>
<head>
<title> Pagina web personale
</head>
<body>
<h1> La mia pagina web personale </h1>
<h2> Informazioni generali </h2>
<p> Mi chiamo Pippo e ho 15 anni.
<h2> Hobby </h2>
<ul>
<li> Calcio </li>
<li> Pianoforte
<li> Pesca </li>
<h2>Conoscenza lingue</h2>
<table border=” 1 >
<tr>
<th> Lingua </th> <th>parlato </th> <th> scritto</th><tr>comprensione</tr>
</tr><tr>
<td> Inglese</td><td>buono</td><td> buono</td> <td>buono </td></tr>
<tr> <td> Tedesco<td><td>discreto </td> <td> discreto
<td>buono</td>
</tr>
</table>
</body>
</html>
Basi Dati
1) Si vuole progettare una base dati per gestire un torneo di calcetto.
Al torneo partecipano diverse squadre. Ogni squadra ha come attributi il nome della squadra e il
nome dell'allenatore. Ogni squadra è composta da giocatori. Ogni giocatore ha come attributi il
nome del giocatore, l'età e il ruolo. Infine vogliamo poter gestire le partite. Ogni partita ha come
attributi la data in cui viene giocata, la squadra che gioca in casa, la squadra che gioca fuori casa, i
goal fatti dalla squadra che gioca in casa e i goal fatti dalla squadra che gioca fuori casa.
Disegnare lo schema concettuale della base dati (diagramma E/R)
Dare la struttura delle tabelle
Scrivere una query in SQL per vedere il nome di tutte le squadre che partecipano al torneo
Scrivere una query SQL per vedere il nome dei giocatori che giocano nella Juventus
Scrivere una query SQL per vedere il nome e l'età dei giocatori con età superiore a 25 anni.
•
•
•
•
•
2) Date le seguenti tabelle
Tabella: Tabella1
A
B
C
1
2
3
6
3
6
Tabella: Tabella2
D
E
F
1
2
3
4
1
3
Scrivere la soluzione alle sequenti query SQL
•
•
•
•
select A,C from Tabella1
select * from Tabella1 where A=C
select A,E from Tabella1, Tabella2
select B,F from Tabella1, Tabella2 where C=F and D=4
Foglio di Calcolo
Dato questo foglio
A
B
C
1
1
2
3
2
4
5
6
D
E
F
G
H
3
4
5
6
7
e date le seguenti formule:
•
in D3: =B1+C2
•
in E4: =C2*A1+D3
•
in F6: =$A1+B$2+$C$1+C2
•
in H2: =SUM(A1:C1;B2)
Rispondere alle seguenti domande:
•
Scrivere il risultato che attendiamo nelle celle D3, E4, F6, H2
•
Se modifichiamo la cella B1 inserendoci 4, come cambiano i valori nelle celle D3, E4, F6,
H2 ?
•
Se copiamo la cella F6 alla posizione H7, che formula troviamo in H7 ? Che valore
conterrà? (N.B: celle vuote hanno come valore 0)
SOLUZIONE
HTML
1)
<html>
<head>
<title> Torneo di calcetto</title>
</head>
<body>
<h1>Torneo di calcetto</h1>
<h2>Informazioni generali</h2>
<p>Il torneo si tiene a . . . in data . . . </p>
<img src=”img.jpg” width=”200”/>
<h2>Squadre partecipanti</h2>
<ul>
<li>Juve</li>
<li>Milan</li>
<li>Inter</li>
</ul>
<h2>Calendario delle partite</h2>
<table border=”1”>
<tr>
<th>Data</th>
<th>Squadra in casa</th>
<th>Squadra fuori casa</th>
<th>Risultato</th>
</tr><tr>
<td>24.05.12</td>
<td>Milan</td>
<td>Juve</td>
<td>0-1</td>
</tr><tr>
<td>25.05.12</td>
<td>Inter</td>
<td>Milan</td>
<td>1-1</td>
</tr>
</table>
</body>
</html>
2)
<html>
<head>
<title> Pagina web personale </title>
</head>
<body>
<h1> La mia pagina web personale </h1>
<h2> Informazioni generali </h2>
<p> Mi chiamo Pippo e ho 15 anni.</p>
<h2> Hobby </h2>
<ul>
<li> Calcio </li>
<li> Pianoforte</li>
<li> Pesca </li>
</ul>
<h2>Conoscenza lingue</h2>
<table border=” 1 “ >
<tr>
<th> Lingua </th> <th>parlato </th> <th> scritto</th><tr><th>comprensione</th></tr>
</tr><tr>
<td> Inglese</td><td>buono</td><td> buono</td> <td>buono </td></tr>
<tr> <td> Tedesco</td><td>discreto </td> <td> discreto </td> <td>buono</td>
</tr>
</table>
</body>
</html>
Basi Dati
1)
Un possibile diagramma E/R per il problema richiesto è il seguente:
Una possibile strutturazione delle tabelle è il seguente:
Squadre (CodSquadra, Nome, Allenatore)
Giocatori (CodGiocatore, CodSquadra, Nome, Età, Ruolo)
Partite (Data, CodSquadraInCasa, CodSquadraFuoriCasa , GoalInCasa, GoalFuoriCasa)
Query in SQL per vedere il nome di tutte le squadre che partecipano al torneo
SELECT Nome
FROM Squadre
Query SQL per vedere il nome dei giocatori che giocano nella Juventus
SELECT Giocatori.Nome
FROM Giocatori, Squadre
WHERE Giocatori.CodSquadra=Squadre.CodSquadra
AND Squadre.Nome='Juventus'
Query SQL per vedere il nome e l'età dei giocatori con età superiore a 25 anni.
SELECT Nome, Età
FROM Giocatori
WHERE Età>25
2)
select A,C from Tabella1
A
C
1
3
6
6
select * from Tabella1 where A=C
A
B
C
6
3
6
select A,E from Tabella1, Tabella2
A
E
1
2
1
1
6
2
6
1
select B,F from Tabella1, Tabella2 where C=F and D=4
B
F
2
3
Foglio di calcolo
Risultati attesi nelle celle D3, E4, F6, H2:
D3 = B1+C2=2+6=8
E4 = C2*A1+D3=6*1+8=14
F6 = $A1+B$2+$C$1+C2=1+5+3+6=15
H2 = SUM(A1:C1;B2)=1+2+3+5=11
Se modifichiamo la cella B1 inserendoci 4, come cambiano i valori nelle celle D3, E4, F6, H2 ?
D3 = B1+C2=4+6=10
E4 = C2*A1+D3=6*1+10=16
F6 = $A1+B$2+$C$1+C2=1+5+3+6=15
H2 = SUM(A1:C1;B2)=1+4+3+5=13
Se copiamo la cella F6 alla posizione H7, che formula troviamo in H7 ? Che valore conterrà? (N.B:
celle vuote hanno come valore 0)
H7 := $A2+D$2+$C$1+E3 = 4+0+3+0=7