Guida a Matlab - Corso base - Capitolo 3: operatori logici e operatori relazionali. Funzioni logiche. La notazione due punti
Capitolo 3: Operatori logici e operatori relazionali. Funzioni logiche. La notazione due punti.
Gli operatori logici supportati da Matlab sono 3:
| ~ |
Il NOT, la negazione logica. |
| & |
L'AND logico. |
| | |
L'OR logico. |
Il TRUE è indicato con 1, FALSE con 0.
Matlab supporta poi 6 operatori relazionali:
| < |
Minore di. |
| <= |
Minore di o uguale a. |
| > |
Maggiore di. |
| >= |
Maggiori di o uguale a. |
| == |
Uguale a. |
| ~= |
Diverso da. |
Ad esempio, l'espressione:
>> 3 < 5;
depositerà , nella variabile ans, il valore 1 (true), così come, ad esempio:
>> 3 ~= 5;
depositerà , nella variabile ans, il valore 0 (false).
Abbiamo, poi, delle vere e proprie FUNZIONI LOGICHE, che prendono in input delle ESPRESSIONI LOGICHE:
| xor(a, b) |
Effettua lo XOR (or esclusivo) di a e b. |
| any(x) |
Restituisce 1 (true) se c'è qualche elemento di x diverso da zero. |
| all(x) |
Restituisce 1 (true) se tutti gli elementi di x sono diversi da zero. |
| isnan(x) |
Restituisce 1 (true) per ciascun valore NaN in x. |
| isinf(x) |
Restituisce 1 (true) per ciascun valore INF (infinito) in x. |
| finite(x) |
Restituisce 1 (true) per ciascun valore finito in x. |
Come detto precedentemente, l'output varrà 1 per TRUE, 0 per FALSE.
Parliamo, ora, di un argomento molto importante in Matlab: la "notazione :" .
Il carattere : serve ad indicare la presenza di un CICLO IMPLICITO, utilissimo per creare o scorrere dei vettori (e, se usato in cicli annidati, matrici a più dimensioni); ad esempio, con:
>> x = 1:5;
creiamo un ciclo che va a "passi" di 1 (valore di default) da 1 a 5; i valori generati vengono assegnati a x, che quindi è un vettore riga, e difatti digitando x sul prompt avremo quest'output:
1 2 3 4 5
Il "passo" di default è, quindi, 1, ma possiamo specificare un valore differente, da porre in mezzo agli estremi del ciclo; ad esempio, con:
>> y = 1 : .2 : 2;
creeremo un vettore riga con valori da 1 a 2 a passi di 0,2 , per cui digitando y sul prompt e premendo Invio vedremo a video:
1.0000 1.2000 1.4000 1.6000 1.8000 2.0000
Possiamo poi utilizzare la notazione : anche per assegnare "in un colpo" dei valori a parti di un vettore; ad esempio, digitando:
>> y(1:3) = 0;
assegneremo il valore 0 ai primi tre elementi di y, per cui digitando sul prompt y e premendo Invio vedremo, a video, i seguenti valori:
0 0 0 1.6000 1.8000 2.0000
Possiamo anche modificare "in un colpo solo tutti i valori di un vettore grazie al ciclo implicito di : ; ad esempio, scrivendo:
>> x(:) = 1;
porremo a 1 tutti i valori del vettore x.
|