ESERCIZIO 1 (IF) |
Costruire una pagina HTML che chieda se si vuole
stabilire il segno (positivo, negativo o zero) di un qualcosa digitato da
tastiera.
Se la risposta è affermativa (click su OK) allora deve richiedere un
valore
Successivamente deve stabilire se l'utente ha digitato qualcosa, se si controllare che sia numerico e a questo punto valutare se è positivo, negativo o nullo.
<SCRIPT Language="JavaScript">
// la definizione della funzione non è richiesta
function isNull(val)
{
// con === il confronto è
effettuato sia sul contenuto che sul tipo
// ad esempio: ("0"==0) è vero mentre
("0"===0) è falso
EVuoto=false;
if (String(val) === "undefined")
EVuoto=true
if (String(val) === "null")
EVuoto=true
if (String(val) === "")
EVuoto=true
return EVuoto;
}
if (confirm("Vuoi valutare il segno di un valore digitato da
tastiera ?")==true)
{
X=prompt("Dammi un valore: ","")
// La valutazione dell'isNull è
necessaria poichè la stringa vuota verrebbe
// valutata come 0
if (isNull(X))
document.write("Non hai digitato niente!")
else
if (isNaN(X))
document.write("Non hai scritto un numero!")
else
if (X>0)
document.write("X è un numero positivo!")
else
if (X<0)
document.write("X è un numero negativo!")
else
document.write("X è uguale a 0!")
}
</SCRIPT>
ESERCIZIO 2 (IF) |
Costruire una pagina HTML che richieda di un triangolo l'altezza e la base e visualizzi l'area e il perimetro. Il programma deve controllare che i dati digitati siano effettivamente dei numeri
<SCRIPT Language="JavaScript">
base=prompt("Fornire la lunghezza della base
(usare il . al posto della , per i decimali): ","0")
if (isNaN(base))
document.write("Non hai scritto un numero - Programma terminato")
else
{
altezza=prompt("Fornire la l'altezza (usare . al posto della , per i
decimali): ","0")
if (isNaN(altezza))
document.write("Non hai scritto un numero - Programma terminato!")
else
{
document.write("L'area del triangolo è: "+base*altezza/2+"<BR>")
Perimetro=(parseFloat(base)+parseFloat(altezza)+Math.sqrt(base*base+altezza*altezza))
document.write("Il perimetro è: "+Perimetro)
}
}
</SCRIPT>
ESERCIZIO 3 (IF) |
Costruire una pagina HTML che legga in ingresso i 3 coefficienti a, b e c di un polinomio di 2^ grado e restituisca le 2 radici x1 e x2. Dal calcolo sono escluse quelle immaginarie che vanno gestite con un opportuno messaggio di errore
ax2+bx+c=0 ==> x1, x2 dove
<SCRIPT Language="JavaScript">
a=prompt("Digitare il coefficiente A: ","0")
if (isNaN(a))
document.write ("Non hai scritto un
numero - Programma terminato")
else
{
b=prompt("Digitare
il coefficiente B: ","0")
if (isNaN(b))
document.write("Non hai scritto un numero - Programma terminato")
else
{
c=prompt("Digitare il coefficiente C [termine noto]: ","0")
if (isNaN(c))
document.write("Non hai scritto un numero - Programma terminato")
else
{
a=parseFloat(a);
b=parseFloat(b);
c=parseFloat(c);
if ( (a==0) && (b!=0) )
{
x1=-(c/b);
document.write("Polinomio di 1^ grado: soluzione unica x1="+x1)
}
else
if ( (a==0) && (b==0) && (c!=0) )
document.write("Eguaglianza impossibile: " +c +"=0")
else
if ( (a==0) && (b==0) && (c==0) )
document.write("Infinite soluzioni!")
else
{
delta=b*b-4*a*c;
if (delta <0)
{
termineReale=-b/2*a;
termineImmaginario=Math.sqrt(-delta)/(2*a)
x1=termineReale+"+"+termineImmaginario+"i"
x2=termineReale+"-"+termineImmaginario+"i"
document.write("Soluzioni nel campo dei numeri immaginari!<HR>")
document.write("La soluzione X<SUB>1</SUB>:"+x1 +"<br>")
document.write("La soluzione X<SUB>2</SUB>:"+x2 +"<br>")
}
else
{
x1=(-b+Math.sqrt(delta))/(2*a)
x2=(-b-Math.sqrt(delta))/(2*a)
document.write("La soluzione X<SUB>1</SUB>:"+x1 +"<br>")
document.write("La soluzione X<SUB>2</SUB>:"+x2 +"<br>")
}
}
}
}
}
</script>
ESERCIZIO 4 (IF) |
Costruire una pagina HTML che richieda un numero N è indichi se si tratta di un numero pari o dispari (suggerimento: operatore x % y = resto divisione di x per y)
ESERCIZIO 5 (IF) |
Costruire una pagina HTML che richieda durante la sua apertura la digitazione di un carattere c e visualizzi le seguenti frasi a secondo del carattere digitato dall'utente: (suggerimento: usare la condizione (c=="") per testare l'assenza di digitazione e (c.length>1) per controllare che siano stati digitati più caratteri)
a) "Non hai digitato un singolo carattere"
==> se non si scrive niente oppure se si è digitato più di un carattere
b) "Hai digitato un carattere minuscolo" ==>
se c="a" .. "z"
c) "Hai digitato un carattere maiuscolo" ==> se c="A" .. "Z"
d) "Hai digitato un numero" ==> se c="0" .. "9"
e) "Non hai digitato un carattere alfanumerico" ==> altrimenti
ESERCIZIO 6 (IF) |
Costruire una pagina HTML che richieda durante la sua apertura l'età del lettore (vedi figura)
e visualizzi le seguenti frasi a seconda dell'età
inserita:
a) "Sei Maggiorenne" ==> se l'età è maggiore o uguale a 18 anni
b) "Non Sei Maggiorenne" ==> se l'età è compresa tra 14 e 18 anni
c) "Sei Minorenne" ==> se l'età è minore o uguale a 14 anni
ESERCIZIO 7 (IF) |
Costruire una pagina HTML che richieda, durante la sua
apertura, le coordinate x e y di un punto e determini se tale punto si trova:
1) all'interno del rettangolo
2) sul perimetro del rettangolo
3) all'esterno del rettangolo
Il rettangolo ha come angolo inferiore
sinistro il punto (1,1) e angolo superiore destro il punto (10,3)
ESERCIZIO 8 (IF) |
Costruire una pagina HTML che richieda, durante la sua
apertura, le coordinate a e b di un punto e determini a quale area
colorata della figura sottostante appartiene:
Le funzioni relative alle due circonferenze sono scritte a fianco della figura. Il programma deve avvertire se il punto (a,b) non appartiene alle regioni colorarate.