Risoluzione numerica di equazioni differenziali
- Risoluzione numerica di equazioni differenziali – il metodo di Eulero [PDF]
- EquazioneDifferenziale [ZIP del progetto NetBeans]
- EquazioneDifferenzialeGrafico [ZIP del progetto NetBeans]
- EquazioneDifferenzialeGrafico [ZIP del progetto Eclipse]
Relatività ristretta
Sessioni
Creare una pagina JSP con alcuni prodotti; si può selezionare solo un prodotto per volta mediante dei radio button; premendo Aggiungi deve essere memorizzata nella sessione una chiave con l’identificativo del prodotto; premendo Totale deve essere visualizzato il totale da pagare.
<%@page import="java.util.Enumeration"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%
String[] prodotti = {"<b>PHILIPS - FERRO DA STIRO A VAPORE GC2040/70</b><br/> Potenza 2100 W - Vapore continuo 30 g/min - Colpo di vapore 100 g/min - Vapore verticale",
"<b>PHILIPS - FERRO DA STIRO A VAPORE GC4410/22</b><br/> Potenza 2400 W - Vapore continuo fino a 40 g/min - Piastra SteamGlide - Sistema antigoccia",
"<b>ROWENTA - FERRO DA STIRO A VAPORE DW8110</b><br/> Potenza 2600 W - Piastra Microsteam inox Laser con 400 micro-fori vapore - Punta alta precisione - Antigoccia",
"<b>POLTI - FERRO DA STIRO A CALDAIA VAPORELLA SILVER - EU2014</b><br/> Caldaia con ferro professionale e piastra Activa - Piastra alluminio - Pressione fino a 4 bar - Tasto vapore continuo",
"<b>DE'LONGHI - SISTEMA STIRANTE A CALDAIA PRO1840X</b><br/> Potenza 2200 W - Pronto in soli 4 minuti - Caldaia in acciaio inox - AntiCalc System - capacità tanica 1l",
"<b>PHILIPS - FERRO A CALDAIA GC7011/20</b><br/> Potenza 2400 W - Piastra scorrevole - Sistema anticalcare - Autonomia illimitata - Serbatoio 1,7 l - Pressione 4,2 bar - Dimensioni compatte",
"<b>BOSCH - FERRO DA STIRO A CALDAIA TDS3715100</b><br/> *Valido per acquisti in punto vendita. Operazioni a premi valida dal 19/03 al 05/04/15. Regolamento completo al numero verde 800829120."};
double[] prezzi = {29.99, 49.99, 69.99, 89.00, 139.99, 159.99, 229.99};
%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Negozio on-line</title>
</head>
<body>
<h1>Negozio on-line</h1>
<p>Scegli l'articolo che vuoi acquistare e clicca su <b>Aggiungi</b>. Clicca su <b>Totale</b> quando hai finito.</p>
<%
session = request.getSession(true);
String tasto = request.getParameter("tasto");
if (tasto != null) {
if (tasto.equals("Aggiungi")) {
String nProdotto = request.getParameter("prodotto");
session.setAttribute(nProdotto, new Integer(1));
%>
<p><b>Prodotto aggiunto al carrello.</b></p>
<%
} else if (tasto.equals("Totale")) {
double totale = 0.0;
Enumeration an = session.getAttributeNames();
while (an.hasMoreElements()) {
totale += prezzi[Integer.parseInt((String) an.nextElement())];
}
%>
<p>Totale da pagare: <b>€ <%=totale%></b></p>
<%
} // endif tasto = Totale
} // endif tasto != null
%>
<hr/>
<form action="index.jsp" method="get">
<%
for (int i = 0; i < prodotti.length; i++) {
%>
<input type="radio" name="prodotto" value="<%=i%>"/><%=prodotti[i]%><br/>
<b>Prezzo € <%=prezzi[i]%></b><hr/>
<%
} // endfor
%>
<input type="submit" name="tasto" value="Aggiungi"/>
<input type="submit" name="tasto" value="Totale"/>
</form>
</body>
</html>
MyCD
Studiarsi la struttura della servlet aggiorna realizzata in classe; creare la servlet cancella che serve ad eliminare un record inserendone l’id; creare la servlet che visualizza l’elenco dei record che soddisfano un determinato criterio: ad esempio autore=Beethoven oppure titolo=6 sinfonia (Vedere il n. 5, pag. 343-349 di “Servlet e pagine JSP”)
MyCD (Eclipse).zip (file aggiornato al 16/03/2015)
Correzione della verifica di laboratorio di Informatica
index.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Fiat Chrysler Automobiles</title>
</head>
<body>
<h1>Fiat Chrysler Automobiles</h1>
<form action="grafico" method="get">
Inserisci le quotazioni in borsa della settimana:
<table cellpadding="2" cellspacing="0" border="0">
<% String[] giorni = {"Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì"};
for (int i = 0; i < 5; i++) {
%><tr><td><%=giorni[i]%></td><td><input name="g" type="text" /></td></tr>
<%
}
%></table><input type="submit" value="Invia" />
</form>
</body>
</html>
servlet: grafico
String[] giorni = {"Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì"};
response.setContentType("image/png");
try (OutputStream os = response.getOutputStream()) {
// legge i parametri
String[] v = request.getParameterValues("g");
// crea l'immagine
BufferedImage img = new BufferedImage(600, 200, BufferedImage.TYPE_INT_RGB);
Graphics g = img.createGraphics();
// cancella lo sfondo
g.setColor(Color.WHITE);
g.fillRect(0, 0, img.getWidth(), img.getHeight());
// inserice il titolo
g.setColor(Color.BLACK);
g.drawString("Fiat Chrysler Automobiles - quotazioni in borsa della settimana", 20, 20);
// disegna l'istogramma
for (int i = 0; i < 5; i++) {
int val = Integer.parseInt(v[i]);
g.setColor(Color.ORANGE);
g.fill3DRect(20 + i * 80, 180 - val, 50, val, true);
g.setColor(Color.BLACK);
g.drawString(" " + giorni[i], 20 + i * 80, 200);
g.drawString(" " + val + " punti", 20 + i * 80, 170 - val);
}
// invia l'immagine in output
ImageIO.write(img, "png", os);
}
esercizio sql
CREATE TABLE clienti (IdCliente int NOT NULL PRIMARY KEY AUTO_INCREMENT, Cognome varchar[50], Nome varchar[50], Sesso char[1], LuogoNascita varchar[30], DataNascita date, Nazionalità char[2], CodiceFiscale char[16]);
INSERT INTO clienti (Cognome, Nome, Sesso, LuogoNascita, DataNascita, Nazionalità, CodiceFiscale VALUES ("Cognome", "Nome", "M", "Città", "2000-01-01", "IT", "AAABBB01A00A000A");
SELECT * FROM clienti WHERE Sesso="F";
SELECT * FROM clienti WHERE DataNascita BETWEEN "1990-00-00" AND "1990-12-31";
SELECT * FROM clienti WHERE Nazionalità="IT";
UPDATE clienti SET Sesso="F" WHERE IdCliente=384;
DELETE FROM clienti WHERE Nazionalità="EN";
Esercizi SQL
Creare le seguenti tabelle utilizzando i tipi di dati più opportuni:
- attori (IdAttore, Nome, AnnoNascita, Nazionalità)
- film (IdFilm, Titolo, AnnoProduzione, Nazionalità, Regista, Genere)
- proiezioni (IdProiezione, Incasso, DataProiezione)
Inserire nelle tabelle precedenti alcuni record per svolgere le domande successive.
Estrarre dalla tabella attori quelli che:
- hanno il nome che inizia per P
- sono nati dopo il 1960
- non sono di nazionalità italiana
Estrarre dalla tabella film quelli che:
- hanno il titolo che inizia per “La storia”
- sono stati prodotti fra il 1980 e il 1989
- sono di genere fantascienza o horror
Aggiornare la tabella proiezioni:
- impostare un incasso di 0 € per le proiezioni (gratuite) che si sono svolte il 01/01/2015
- modificare la data di proiezione in 01/04/2015 per il record avente id pari a 1232
- cancellare le proiezioni che hanno una data antecedente il 15/09/2014
Esercizi di Fisica
Un corpo di massa 25 kg si trova in moto con una velocità di 10 m/s in cima ad una collina di altezza 120 m. Lungo il percorso è soggetto ad un coefficiente di attrito di 0,25. La discesa ha un’inclinazione di 15°. Calcola: la lunghezza della discesa; la velocità che ha il corpo alla fine della discesa.
[ lunghezza = 464 m; Energia iniziale = 30650 J; v fin = 16,0 m/s ]
Un motore sviluppa una potenza di 8500 W. Un’automobile deve risalire una rampa di lunghezza 150 m e inclinazione 18°. Calcola il lavoro che deve compiere il motore e quanto tempo impiega. La massa dell’auto è di 1200 kg.
[ 545 kJ; 64 s ]
Una molla di costante elastica 150 N/m è inizialmente compressa di 25 cm; un corpo di massa 1,5 kg viene tenuto premuto contro la molla. Quando la molla scatta spinge il corpo lunco un percorso orizzontale soggetto ad un attrito pari a 0,75. Calcola quanto spazio percorre il corpo prima che la sua energia cinetica si sia ridotta ad 1/10 di quella iniziale.
Esercizio sulle JSP e le servlet in preparazione alla verifica
Realizzare una pagina JSP che visualizzi un form con la domanda: Ti piace il gelato? Devono esserci due possibili risposte in 2 radio button Sì e No. Subito dopo il tasto Invia deve essere visualizzato mediante l’utilizzo della servlet grafico il grafico seguente:
<img src=”grafico?voto=<%=request.getParameter(“voto”)%>” />
La servlet deve funzionare e visualizzare l’immagine sia nel caso in cui le vengano passati dei parametri, sia in caso contrario.

Soluzione (NetBeans): Gelato.zip