21/11/19 1
Fondamenti di Informatica
Prof. Fenza Giuseppe
Esercitazione flow-chart
Esercizi
8. Definire il diagramma di flusso per un
programma che scrive se un numero N (dato
in input) è nullo, positivo o negativo
9. Definire un diagramma di flusso per un
programma che calcola la media di un
insieme di numeri;
•
non è noto a priori quanti sono i numeri di cui deve
essere calcolata la media
•
I numeri vengono letti uno alla volta fino a che non si
incontra un x=0, che segnala la fine dell’insieme
Esercizio 8
PROG Numeri Pos_Neg
OUT "Inserisci un numero" IN N
IF N>0
OUT "Il numero è positivo" ELSE //if N>0
IF N==0
OUT "Il numero è nullo" ELSE //if N==0
OUT "Il numero è negativo" END IF //N==0
END IF //N>0
Esercizio 9
PROG Media
ASSIGN COUNT = 0 ASSIGN SOMMA = 0 DO_WHILE //x =0
OUT "Inserisci un numero" IN x
ASSIGN SOMMA = SOMMA + X ASSIGN COUNT = COUNT +1 END DO_WHILE x =0
ASSIGN MEDIA = SOMMA/(COUNT-1) OUT "La media è"
ASSIGN MEDIA END PROG //Media
Tabella di Traccia
Tabella di Traccia
21/11/19 7 Inizio Leggi NUM SOMMA = NUM K = 0 Fine k = k + 1SOMMA = SOMMA + NUM
Scrivi SOMMA
k = 4
Vero
Disegnare il Flow-Chart
• Dato un numero intero positivo N, verificare se
appartiene all'intervallo [2,8] o all'intervallo
[10,20]. Richiedere i valori in input finché il
numero in input non rientra in almeno un
intervallo.
• Rappresentare con un diagramma a blocchi un
algoritmo che legge in input 3 numeri e stampa
il valore minimo, controllare che ciascun
numero dato in input sia maggiore di zero.
21/11/19 9
Fondamenti di Informatica
Prof. Fenza Giuseppe
Esercitazione SQL
Domande SQL
• Data la tabella Fiori precedente, quale è l’obiettivo della query seguente?
SELECT Colore FROM Fiori
WHERE Codice LIKE “11*”
a. Visualizzare i fiori il cui codice inizia con le cifre “11“;
b. Visualizzare i codici dei fiori che iniziano con le cifre “11” e hanno esattamente 3 caratteri; c. Visualizzare i codici dei fiori che iniziano con le cifre “11” e hanno un numero qualsiasi di
caratteri;
Domande SQL
• Data la tabella Fiori precedente, quale è il risultato restituito dalla seguente query?
SELECT Nome, Prezzo FROM Fiori
WHERE (Prezzo < 10) OR
((Quantità BETWEEN 20 AND 40) AND [Data Vendita] < 05/09/2016)) ORDER BY Nome Query1 Nome Prezzo Papavero 41$ Query1 Nome Colore Peonia 25$ Viola 10$ Query1 Nome Prezzo Viola 10$ Query1 Nome Colore Viola 10$ Rosa 60$ A. B. C. D.
Domande SQL
Libri
Autore Titolo Edizione Pagine Prezzo
Ammaniti N. Ti prendo e ti porto via
1 452 € 7,80 Crichton M. Preda 1 462 € 18,50 De Crescenzo L. Così parlò
Bellavista 7 228 € 7,65 De Crescenzo L. La Napoli di Bellavista 4 245 € 12,00 Simenon G. La rivoltella di Maigret 1 165 € 7,00
• Data la tabella “Libri”, scrivere le seguenti interrogazioni in SQL:
1. Visualizzare tutte le informazioni, tranne
“Pagine”, relative ai libri in Tabella.
2. Visualizzare il numero
medio di pagine dei libri in tabella.
Domande SQL
• Data la tabella “Libri”, quale è l’obiettivo della query seguente?
SELECT Autore, COUNT(*) FROM Libri
GROUP BY Autore
• A. Visualizzare, per ciascun autore, il numero medio di libri che ha scritto;
• B. Visualizzare, per ciascun autore, il numero di pagine scritte;
• C. Visualizzare ciascun autore e il numero di libri che ha scritto;
Domande SQL
• Data la tabella “Libri”, quale è il risultato restituito dalla seguente query?
SELECT Titolo FROM Libri
WHERE (Prezzo < 10 AND Prezzo > 7)
OR Pagine >460 Titolo Titolo Ti prendo e ti porto via
Preda
Così parlò Bellavista La rivoltella di Maigret
Titolo
Così parlò Bellavista Preda
Ti prendo e ti porto via
Titolo
Così parlò Bellavista Ti prendo e ti porto via
A. B.
Domande SQL
AutomobileModello Marca Anno Km percorsi Revisionata Prezzo vendita
145-1.6 TS Alfa Romeo 1997 28000 Sì € 5.400,00
A3-3p Audi 1999 76000 No € 13.000,00
Celica coupé Toyota 1998 41000 Sì € 8.000,00 Panda 4x4 Fiat 2000 14000 No € 9.000,00 Punto 3p Fiat 1997 80000 Sì € 3.300,00
325 TD BMW 1995 20000 No € 3.000,00
• Data la tabella precedente, scrivere le seguenti query in SQL:
1. Elencare tutti i campi della tabella, con esclusione di “Revisionata”, relativi alle automobili il cui prezzo di vendita è compreso tra 3000,00 e 9000,00 euro
2. Visualizzare la media dei km percorsi da tutte le auto
assegnandovi come alias il nome “Media”
Domande SQL
• Quale è l’obiettivo della query seguente?
SELECT COUNT(*), Anno
FROM Automobile
GROUP BY Anno
– A. Sommare il numero di auto per ciascun anno; – B. Contare il numero di auto;
– C. Visualizzare l’anno e il numero di auto immatricolate in quell’anno;
– D. Visualizzare l’anno e il numero di auto revisionate in quell’anno.
Domande SQL
• Quale è il risultato restituito dalla seguente query?
SELECT MIN([Prezzo Vendita]) AS Prezzo, Marca FROM Automobile GROUP BY Marca Query1 Marca Prezzo Alfa Romeo € 5.400,00 Audi € 13.000,00 BMW € 3.000,00 Fiat € 3.300,00 Toyota € 8.000,00 Query1 Marca Prezzo BMW € 3.000,00 A. C. Query1 Marca Prezzo Alfa Romeo € 5.400,00 Audi € 13.000,00 BMW € 3.000,00 Fiat € 3.300,00 Fiat € 9.000,00 Toyota € 8.000,00 Query1
Marca Prezzo Vendita
Alfa Romeo € 5.400,00 Audi € 13.000,00 BMW € 3.000,00 Fiat € 3.300,00 Fiat € 9.000,00 Toyota € 8.000,00 B. D.
Domande SQL
AutomobileModello Marca Anno Km percorsi Revisionata Prezzo vendita
145-1.6 TS Alfa Romeo 1997 28000 Sì € 5.400,00
A3-3p Audi 1999 76000 No € 13.000,00
Celica coupé Toyota 1998 41000 Sì € 8.000,00 Panda 4x4 Fiat 2000 14000 No € 9.000,00 Punto 3p Fiat 1997 80000 Sì € 3.300,00
325 TD BMW 1995 20000 No € 3.000,00
• Data la tabella precedente, scrivere le seguenti query in SQL:
1. Elencare tutti i campi della tabella, con esclusione di “Revisionata”, relativi alle automobili il cui anno di
immatricolazione è compreso tra 1998 e 2000
2. Visualizzare il modello di auto più vecchio
Domande SQL
• Quale è l’obiettivo della query seguente?
SELECT Marca, AVG([Km Percorsi]) AS KM FROM Automobile
GROUP BY Marca
– A. Visualizzare marca e media dei km percorsi dalle automobili della stessa marca;
– B. Visualizzare marca e media dei km percorsi de tutte le automobili;
– C. Sommare i km percorsi da ciascuna automobile;
– D. Sommare i km percorsi dalle automobili della stessa marca.
Domande SQL
• Quale è il risultato restituito dalla seguente query?
SELECT MIN([Prezzo Vendita]) AS Prezzo, Marca FROM Automobile GROUP BY Marca Query1 Marca TOT Alfa Romeo 1 Audi 1 BMW 1 Fiat 2 Toyota 1 Query1 Marca TOT Alfa Romeo 1 Audi 1 Query1 TOT 2 Query1 Marca Count Alfa Romeo 1 Audi 1 A. B. C. D. Automobile
Modello Marca Anno Km percorsi Revisionata Prezzo vendita
145-1.6 TS Alfa Romeo 1997 28000 Sì € 5.400,00
A3-3p Audi 1999 76000 No € 13.000,00
Celica coupé Toyota 1998 41000 Sì € 8.000,00 Panda 4x4 Fiat 2000 14000 No € 9.000,00 Punto 3p Fiat 1997 80000 Sì € 3.300,00