L'operatore logico AND
data di oggi: |
Corso di Javascript |
Gli operatori logici servono qunado bisogna fare il confronto tra più condizioni che si possono verificare. In una lezione precedente abbiamo visto come si forma il plurale dei nomi, secondo la grammatica italiana.
singolare | plurale | |||
ultime lettere | genere |
esempio |
ultime lettere | esempio |
a
a |
maschile
femminile |
poeta,gorilla casa,medicina |
i
e |
poeti,gorilli
case,medicine |
Se un nome finisce con la lettera "a" il plurale non è detto che si debba formare con la lettera "i"; ma vi possono essre due casi.
1 - Se il nome è maschile e termina in "a" il plurale si forma aggiungendo la lettera "i" alla radice del nome.
2 - Se il nome è femminile e termina in "a" il plurale si forma aggiungendo la lettera "e" alla radice del nome.
Vedendo la cosa in maniera diversa possiamo dire:
1 - Uso "i" se si verificano contemporaneamente due condizioni:
a) il nome deve essere maschile;
b) l'ultima lettera, detta desinenza, deve essere la "a".
Quando due condizioni devono essere vere contemporanemante si usa un operatore logico detto AND.
In javascript l'operatore logico AND lo si scrive: &&
Esempio
if ( (genere=="maschile")&&(b=="a") )
Cosa vuol dire questa istruzione if?
La condizione è vera se sono vere due cose:
a)- (genere=="maschile")
Cioè il valore contenuto nella variabile javascript che io ho chiamato genere deve essere: "maschile". Poichè vi è l'operatore AND, cioè && deve essere vera anche la:
b) - (b=="a")
cioè nella variabile javascript che ho chiamato b, vi deve essere la desinenza: "a".
Se sono vere le due condizioni allora il plurale lo formo aggiungendo una"i" alla radice del nome.
Analogamente per il femminile, vedendo la cosa in maniera diversa possiamo dire:
1 - Uso "e" per il plurale se si verificano contemporaneamente due condizioni:
a) il nome deve essere femminile;
b) l'ultima lettera, detta desinenza, deve essere la "a".
Quando due condizioni devono essere vere contemporanemante si usa un operatore logico detto AND.
In javascript l'operatore logico AND lo si scrive: &&
Esempio
if ( (genere=="femminile")&&(b=="a") )
Cosa vuol dire questa istruzione if?
La condizione è vera se sono vere due cose:
a)- (genere=="femminile")
Cioè il valore contenuto nella variabile javascript che io ho chiamato genere deve essere: "femminle". Poichè vi è l'operatore AND, cioè && deve essere vera anche la:
b) - (b=="a")
cioè nella variabile javascript che ho chiamato b, vi deve essere la desinenza: "a".
Se sono vere le due condizioni allora il plurale lo formo aggiungendo una "e" alla radice del nome.
Esercizio
Scrivere un programma di italiano che formi il plurale dei nomi che terminano con la lettera "a".
Soluzione
Vi sono diversi modi di risovere questo esercizio; noi scegliamo il seguente:
Questo è un programma di italiano. Scriva nella casella di testo un nome al singolare che termina in a, senza l'ultima lettera: Otterrai il plurale sulla destra. Singolare maschile: plurale: Cambio del genere: |
schermata di quarto.html |
Notiamo che vi sono tre caselle di testo; in una casella l'utente andrà a scrivere il nome, senza la desinenza, cioè solo la radice, che si ottiene togliendo l'ultima lettera.
Esempio
Se voglio il plurale di poeta, nella casella di testo non scrivo poeta, ma
poet
cioè tolgo l'ultima lettera, detta desinenza.
Nella seconda casella di testo ho messo la desinenza, cioè la lettera "a". Nella terza casella di testo verrà scritto il plurale, che si ootiene aggiungendo alla radice la lettera "i" per i nomi maschili, e la lettera "e" per i nomi femminili.
Per decidere se un nome è maschile o femminile uso due pulsanti di comando:
Quando premo uno dei due pulsanti indico il genere del nome; se non cambio genere il nome resta quello precedente.
Costruzione delle tre caselle di testo
Intanto ci serve una casella di testo in cui l'utente del programma scriverà la radice.
1a casella di testo
La casella di testo la possiamo costruire facilmente con la seguente istruzione:
<input type="text" name="radice" onkeyup="plurale()" size="11">
La casella di testo ha nome: "radice"; quando l'utente scrive una radice di un nome, con la funzione plurale() che costruiremo dopo, formeremo il plurale del nome.
2a casella di testo
La casella di testo la possiamo costruire facilmente con la seguente istruzione:
<input type="text" name="desinenza" size="4" value="a">
La casella di testo ha nome: "desinenza"; essa contiene ul valore fisso, cioè "a", che è la desidenza del nostro programma.
3a casella di testo
La casella di testo la possiamo costruire facilmente con la seguente istruzione:
<input type="text" name="plurale" size="13">
La casella di testo ha nome: "plurale"; quando l'utente scrive una radice di un nome, con la funzione plurale() che costruiremo dopo, formeremo il plurale del nome e lo scriveremo in questa casella di testo.
Costruiamo ora i due pulsanti per il genere, o maschile o femminile.
1a pulsante
Il pulsante lo possiamo costruire facilmente con la seguente istruzione:
<input type="button" value="MASCHILE" onclick="genere='maschile'" >
Il pulsante ha la scritta "MASCHILE" ottenuta con:
value="MASCHILE"
quando l'utente preme il pulsante, con:
onclick=" genere='maschile' "
ottengo che nella variabile javascript di nome genere, viene memorizzato il valore: maschile.
2a pulsante
Il pulsante lo possiamo costruire facilmente con la seguente istruzione:
<input type="button" value="FEMMINILE" onclick="genere='femminile'" >
Il pulsante ha la scritta "FEMMINILE" ottenuta con:
value="FEMMINILE"
quando l'utente preme il pulsante, con:
onclick=" genere='femminile' "
ottengo che nella variabile javascript di nome genere, viene memorizzato il valore: femminile.
Si tratta ora di scrivere la funzione plurale().
Ci serve una istruzione che controlli sia se il nome è maschile o femminile e sia se la desinenza è "a", in modo da decidere come formare il plurale. Ci servono due if. La prima if la scriviamo in questo modo:
if ((genere=="maschile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"i";
con:
if ((genere=="maschile")&&(b=="a"))
controllo che il genere sia maschile e che la desinenza sia "a". Con:
document.all.plurale.value=
indico il valore che deve essere scritto nella casella di testo di nome: plurale.
Questo valore lo ottengo prendendo la radice che si trova in:
document.all.radice.value
e aggiungendo una lettera "i" con:
+"i";
Analogamente per il femminile ottengo:
if ((genere=="femminile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"e";
con:
if ((genere=="femminile")&&(b=="a"))
controllo che il genere sia femminile e che la desinenza sia "a". Con:
document.all.plurale.value=
indico il valore che deve essere scritto nella casella di testo di nome: plurale.
Questo valore lo ottengo prendendo la radice che si trova in:
document.all.radice.value
e aggiungendo una lettera "e" con:
+"e";
La funzione plurale() completa è la seguente:
function plurale() {
a=document.all.radice.value;
b=document.all.desinenza.value;
if ((genere=="maschile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"i";
if ((genere=="femminile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"e";
}
Il listato completo del programma è:
<script>
genere="maschile"; function plurale() { a=document.all.radice.value; b=document.all.desinenza.value; if ((genere=="maschile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"i"; if ((genere=="femminile")&&(b=="a")) document.all.plurale.value=document.all.radice.value+"e"; } </script> <body background="../sfondo2.jpg"> Questo è un programma di italiano.<br> Scriva nella casella di testo un nome al singolare che termina in a, senza l'ultima lettera: <br> Otterrai il plurale sulla destra.<br> Singolare maschile: <input type="text" name="radice" onkeyup="plurale()" size="11"><input type="text" name="desinenza" size="4" value="a"> plurale: <input type="text" name="plurale" size="13"> <br><br> Cambio del genere: <input type="button" value="MASCHILE" onclick="genere='maschile'" > <input type="button" value="FEMMINILE" onclick="genere='femminile'" > <br> </body> |
listato di quarto.html |
Scriviamolo con Word e salviamolo con il nome di quarto.html e proviamolo con Internet Explorer per vedere se funziona. Dovremmo vedere:
Corso Javascript per scuola media
prof. Pietro De Paolis
|
|
|
Indice di tutte le pagine del sito