3E - 3I SIA: l'array e le funzioni min, max e media in Javascript

 



Questo programma in Javascript (Js), inserito nella pagina html consente, tramite le funzioni di inserire 10 elementi nell'array e di calcolare il valore minimo, quello massimo e la media.


<html>
<head>
<script language="Javascript">
V=new Array(10) dichiaro il vettore “V” di 10 elementi in RAM
op=new String() variabile utilizzata per la scelta
var ris; variabile che contiene il risultato
function carica(n_el) funzione che permette il caricamento degli elementi nel vettore
{var i dichiarazione della variabile locale contatore “i”
i=0 inizializzo la variabile “i” (si può dire anche: azzero la variabile “i”
while(i<n_el) Ciclo While che permette il caricamento del vettore
{V[i]=prompt("inserisci un elemento", 0)*1 istruzione di input che carica il valore
nei singoli elementi del vettore, moltiplico il valore per 1 per far diventare la variabile
di tipo numerico, alternativa a parseInt o parseFloat
i++ incremento della variabile “i”
}
}

function Min(V) funzione per il calcolo del valore minimo tra gli elementi dell’array
{var min,i; dichiaro le variabili locali: min e i
i=1 assegno 1 alla variabile “i” così il ciclo partirà da 1 invece di 0
min=V[0] copio il primo valore presente nel vettore nella variabile min
while(i<V.length) ciclo di iterazione con condizione iniziale (ciclo precondizione) e
il ciclo parte da 1 fino alla dimensione reale del vettore ma potevo inserire 10 al posto di V.length però formalmente è più corretto scrivere V.lenght

{if(V[i]<min) Condizione di verifica se l’elemento del vettore confrontato
con il contenuto presente nella variabile “min”
min=V[i]; se l’elemento del vettore è minore del valore presente nella variabile “min”
copia il valore nella variabile “min”
i++; incremento variabile locale contatore “i”
}
return min restituisce il valore presente nella variabile “min”
}

function Max(V) Funzione per il calcolo del valore massimo tra gli elementi dell’array
stessa procedura della funzione “min” ma com il confronto sul valore max
{var max,i;
i=1
max=V[0]
while(i<V.length)
{if(V[i]>max)
max=V[i]
i++
}
return max
}

function Media(V) Funzione per il calcolo della media tra gli elementi dell’array
{
var i,somma,media; dichiaro le variabili locali che utilizzerò nella funzione
somma=0; inizializzo la variabile “somma”
i=0; inizializzo la variabile “i”
while(i<V.length) Ciclo pre condizionale che parte da 0
e arriva alla dimensione reale dell’array “V”
{somma=somma+V[i]; mentre viene letto il vettore copia il contenuto degli
elementi nella variabile somma
i=i+1; incremento di 1 la variabile “i” fino ad arrivare alla fine dell’array
}
media=somma/V.length fuori dal ciclo si calcola la media dei 10 elementi presenti nell’array
return media restituisce il valore della media degli elementi dell’array
}

function calcola(op) funzione che gestisce le scelte operate con l’struzione Switch
{
switch(op) { nel caso si sceglie
case ("min"): min
ris=Min(V) il risultato conterrà la funzione “min”
break il programma si interrompe
case ("max"): max
ris=Max(V) il risultato conterrà la funzione “max”
break il programma si interrompe
case ("media"): media
ris=Media(V) il risultato conterrà la funzione “media”
break il programma si interrompe
}
alert("il valore "+ op + " è "+ ris); stampa il risultato della costante e della variabile
}

</script>
</head>
<body onload="carica(10)">attiva la funzione carica e vengono richiesti
l’inserimento dei valori per ogni singolo elemento dell’array
<form name="F1"> assegno un nome al modulo
<input type="button" value="MINIMO" onClick="calcola('min')"> bottone che attiva
la funzione “min”
<input type="button" value="MASSIMO" onClick="calcola('max')"> bottone che
attiva la funzione “max”
<input type="button" value="MEDIA" onClick="calcola('media')"> bottone
che attiva la funzione “media”
</form> chiudo il modulo di inserimento
</body>
</html>

Scarica l'esercizio a questo link 


Esercizio per lunedì 19 aprile 2021
Realizzare un programma in Javascript che consente di caricare 10 stipendi (float) e calcolare con le funzione : valore minimo, max e media

Commenti

Post popolari in questo blog

Simulazioni di reti (con Cisco Packet Tracer)

Esercizi in Excel e fogli di Google