Le funzioni in JavaScript permettono di scrivere del codice in un blocco in modo che possa essere utilizzato anche più volte quando sia necessario. La sintassi è:
function nome(argomenti){
istruzioni;
}
dove al posto di nome possiamo scrivere un termine che ci ricordi lo scopo della funzione stessa. Le istruzioni vanno separate dal punto e virgola.
Per riferirsi, o chiamare, una funzione, basta usare questa sintassi:
nome(valore degli argomenti)
Se gli argomenti mancano, occorre comunque inserire le parentesi.
Ad esempio, noi abbiamo costruito la funzione function leggi() ed in seguito l'abbiamo richiamata scrivendo leggi().
window.prompt
Metodo che si applica a una finestra predefinita di Javascript e che permette di leggere una dato inserito dall'utente e di memorizzarlo in una variabile
window.alert
Metodo che si applica a una finestra predefinita di Javascript e che permette di inviare un messaggio sullo schermo Approfondimento
Un'equazione numerica intera viene di solito rappresentata con ax+b=0: a è il coefficiente dell'incognita, b è il termine noto, x è l'incognita.
Abbiamo i seguenti casi:
1) se sia a che b sono uguali a zero l'equazione risulta indeterminata;
2) se a=0 e b no l'equazione risulta impossibile;
3) se a è diverso da zero l'equazione è determinata e ammette soluzione x=-b/a
||
Or - Operatore binario che dà vero se almeno uno degli operandi è vero
NaN
Valore che rappresenta Not a number (non è un numero).
if {...} else if {...} else {...}
Selezione binaria nidificata. Si ha la selezione binaria nidificata quando non si effettua solo una scelta fra due alternative, come nella selezione binaria, ma l'else porta a sua volta ad un'altra scelta.
Scrivi un programma che risolva un'equazione di primo grado numerica intera con l'aiuto di caselle di testo.
ANTEPRIMA
Il programma si attiva al clic del mouse su un pulsante, che qui presentiamo:
Cliccando sul tasto si apre una finestra di dialogo che richiede di immettere il coefficiente dell'incognita.
Inserirlo e premere il tasto OK
A questo punto compare un'altra finestra di dialogo che richiede di immettere il termine noto.
Inserirlo e premere il tasto OK
Si riceve in risposta una finestra di avviso con la soluzione dell'equazione.
Qualora l'utente abbia premuto il pulsante ANNULLA oppure non abbia inserito alcun valore in una delle due finestre iniziali, oppure bbia inserito valori non numerici, viene ricevuto l'avviso "Non hai immesso valori validi".
Prepariamo ora il codice opportuno.
PER RISOLVERE UN'EQUAZIONE DI PRIMO GRADO DEL TIPO ax+b=0 DOBBIAMO:
conoscere i dati (dati di input) che sono:
il coefficiente dell'incognita, che indicheremo con a
function leggi() {
a=window.prompt('Coefficiente incognita');
b=window.prompt('Termine noto');
}
function calcola() {
if (a==0) {
if (b==0) {window.alert('Equazione indeterminata')}
else {window.alert('Equazione impossibile');}
}
else {
x=-b/a;
window.alert('Equazione determinata. Soluzione = ' + x);
}
}
PREPARIAMO LA PROCEDURA FINALE
function esegui() {
leggi();
calcola()
}
NOTA BENE La procedura rispecchia fedelmente la discussione di un'equazione di primo grado letterale intera; nel nostro caso, però, potrebbe succedere che l'utente:
prema il tasto OK senza immettere alcun valore;
prema il tasto annulla;
scriva un dato non numerico.
Se dunque, ad esempio, alla richiesta di immettere il coefficiente dell'incognita scriviamo p, e alla richiesta di immettere il termine noto scriviamo q, otteniamo la risposta Equazione determinata. Soluzione = NaN
Dovremmo dunque aggiungere ulteriori controlli che permettano anche la visualizzazione del messaggio: "Non hai immesso valori validi".