Inform e Glulx/Le basi di Inform/Un po' di matematica non guasta mai: differenze tra le versioni
Nuova pagina: ==Un po' di matematica non guasta mai== In Inform, ci sono quattro operatori aritmetici fondamentali: * il segno di moltiplicazione (*) ➨ <tt>a = 10 * 5;</tt> * il s… |
Nessun oggetto della modifica |
||
Riga 1: | Riga 1: | ||
==Un po' di matematica non guasta mai== |
==Un po' di matematica non guasta mai== |
||
In Inform, ci sono quattro operatori aritmetici fondamentali: |
In Inform, ci sono quattro [[w:Operatore_(informatica)|operatori aritmetici]] fondamentali: |
||
* il segno di moltiplicazione (*) ➨ <tt>a = 10 * 5;</tt> |
* il segno di moltiplicazione (*) ➨ <tt>a = 10 * 5;</tt> |
||
* il segno di divisione (/) ➨ <tt>a = 10 / 5;</tt> |
* il segno di divisione (/) ➨ <tt>a = 10 / 5;</tt> |
||
Riga 6: | Riga 6: | ||
* il segno di sottrazione (–) ➨ <tt>a = 10 – 5;</tt> |
* il segno di sottrazione (–) ➨ <tt>a = 10 – 5;</tt> |
||
Quando un’operazione aritmetica richiede l’utilizzo di più operatori aritmetici, ci troviamo di fronte a ''' |
Quando un’operazione aritmetica richiede l’utilizzo di più operatori aritmetici, ci troviamo di fronte a un’'''espressione''' ➨ <tt>a = (((10*5) + (10-3)) * 6) + (-9);</tt><br> |
||
In questo caso bisogna fare molta attenzione all’ordine con cui gli operatori lavorano. Infatti, se scriviamo "4 + 2 * 8" e "4 * 2 + 8", avremo come risultato "20" nel primo caso e "16" nel secondo (vengono cioè eseguite, in ordine di priorità, prima le moltiplicazioni e poi le addizioni). Possiamo quindi affermare che: |
In questo caso bisogna fare molta attenzione all’ordine con cui gli operatori lavorano. Infatti, se scriviamo "4 + 2 * 8" e "4 * 2 + 8", avremo come risultato "20" nel primo caso e "16" nel secondo (vengono cioè eseguite, in ordine di priorità, prima le moltiplicazioni e poi le addizioni). Possiamo quindi affermare che: |
||
* '''gli operatori aritmetici lavorano in ordine di priorità: in un’espressione aritmetica viene eseguita per prima la moltiplicazione e, a seguire, la divisione, l’addizione e la sottrazione. ne consegue che''': |
* '''gli operatori aritmetici lavorano in ordine di priorità: in un’espressione aritmetica viene eseguita per prima la moltiplicazione e, a seguire, la divisione, l’addizione e la sottrazione. ne consegue che''': |
||
Riga 46: | Riga 46: | ||
Se vogliamo poi |
Se vogliamo poi incrementare o decrementare il valore contenuto in una variabile di 1, esistono delle forme abbreviate<ref><tt>b++</tt> e <tt>++b</tt> (così come <tt>b--</tt> e <tt>--b</tt>) hanno esattamente lo stesso effetto sulla variabile <tt>b</tt> e la differenza sta solo nel valore delle espressioni.</ref>: |
||
* <tt>b++</tt> ➨ viene '''prima''' assegnato il nuovo valore alla variabile e '''dopo''' viene incrementato di 1; |
* <tt>b++</tt> ➨ viene '''prima''' assegnato il nuovo valore alla variabile e '''dopo''' viene incrementato di 1; |
||
* <tt>++b</tt> ➨ viene '''prima''' incrementato di 1 il nuovo valore e '''dopo''' viene assegnato alla variabile; |
* <tt>++b</tt> ➨ viene '''prima''' incrementato di 1 il nuovo valore e '''dopo''' viene assegnato alla variabile; |
Versione delle 17:01, 2 giu 2009
Un po' di matematica non guasta mai
In Inform, ci sono quattro operatori aritmetici fondamentali:
- il segno di moltiplicazione (*) ➨ a = 10 * 5;
- il segno di divisione (/) ➨ a = 10 / 5;
- il segno di addizione (+) ➨ a = 10 + 5;
- il segno di sottrazione (–) ➨ a = 10 – 5;
Quando un’operazione aritmetica richiede l’utilizzo di più operatori aritmetici, ci troviamo di fronte a un’espressione ➨ a = (((10*5) + (10-3)) * 6) + (-9);
In questo caso bisogna fare molta attenzione all’ordine con cui gli operatori lavorano. Infatti, se scriviamo "4 + 2 * 8" e "4 * 2 + 8", avremo come risultato "20" nel primo caso e "16" nel secondo (vengono cioè eseguite, in ordine di priorità, prima le moltiplicazioni e poi le addizioni). Possiamo quindi affermare che:
- gli operatori aritmetici lavorano in ordine di priorità: in un’espressione aritmetica viene eseguita per prima la moltiplicazione e, a seguire, la divisione, l’addizione e la sottrazione. ne consegue che:
- in un’espressione aritmetica le singole operazioni devono essere sempre racchiuse da delle parentesi tonde;
- a ogni parentesi tonda aperta, ne deve sempre corrispondere una tonda chiusa.
Se vogliamo quindi sommare "4 + 2" e moltiplicare poi il risultato ottenuto per "8", avremo: "(4 + 2) * 8".
In Inform è anche possibile usare l’operatore % per ottenere il resto di una divisione. Quindi:
- "15/5" darà come risultato "3", mentre "15%5" darà come risultato "0";
- "17/5" darà come risultato "3", mentre "17%5" darà come risultato "2";
- non è invece possibile dividere per 0 (come d’altra parte la stessa matematica ci insegna) così come non è possibile usare i numeri con la virgola (ad esempio 6.34).
È anche possibile operare sui valori contenuti all’interno delle variabili. Ecco dei possibili esempi:
a = b + 20; | b = (c * 60) + (b / 30); | d = (b + 7) * (b - 8); |
Spesso poi, il contenuto di una variabile può essere incrementato o decrementato di un certo valore, come avviene nei seguenti esempi:
a = a + 2; | b = b + 5; | b = b – a | b = b – (a + 3); |
Quindi, supponendo che a abbia il valore "12" e che b abbia il valore "6", avremo:
a = a + 2 | b = b – a | b = b – (a + 3) |
a = 12 + 2 | b = 6 - 12 | b = 6 – (12 + 3) |
a = 14 | b = -6 | b = –9 |
Se vogliamo poi incrementare o decrementare il valore contenuto in una variabile di 1, esistono delle forme abbreviate[1]:
- b++ ➨ viene prima assegnato il nuovo valore alla variabile e dopo viene incrementato di 1;
- ++b ➨ viene prima incrementato di 1 il nuovo valore e dopo viene assegnato alla variabile;
- b-- ➨ viene prima assegnato il nuovo valore alla variabile e dopo viene decrementato di 1;
- --b ➨ viene prima decrementato di 1 il nuovo valore e dopo viene assegnato alla variabile;
Note
- ↑ b++ e ++b (così come b-- e --b) hanno esattamente lo stesso effetto sulla variabile b e la differenza sta solo nel valore delle espressioni.