Gli operatori logici e le espressioni boleane

« Older   Newer »
  Share  
GHOST-ITA
CAT_IMG Posted on 14/9/2011, 20:31     +1   -1




---------------------------------------------
Gli operatori di confronto
-----------------------------------------------
Gli operatori di confronto sono fondamentali perchè ci permettono, effettuando dei confronti fra valori, di prendere delle decisioni, cioè di far svolgere al nostro script determinate operazioni invece di altre. Quando utilizziamo gli operatori di confronto, confrontiamo i due valori posti a sinistra e a destra dell'operatore stesso.
Dopo la valutazione, una variabile diventa Bolean quindi, true o false
Operatore Operazione 
== Uguale 
!= Diverso 
 <Minore 
Maggiore 
 <=Minore o Uguale 
 >=Maggiore o Uguale 
 ===Identico
 !==uguale come valore ma diverso come tipo

Facciamo un esempio:
CODICE
<?
$a = 5;
$b = 9.0;
$c = 9;
$d = 5.0
$a == $b; //false
$a == $c; //false
$a == $d; //true
$a === $d; //false xke $a è intero mentre $d è real
$a > $c; //false
$c >= $a; //true
$a < $d; //false
$c <= $b; //true
?>

Gli stessi operatori in php possono essere usati anche per le lettere.
In questo caso il confronto viene fatto basandosi sull'ordine alfabetico dei caratteri: vale a dire che vengono considerati 'minori' i caratteri che 'vengono prima' nell'ordine alfabetico.
altro esempio per parole e numeri:
CODICE
<?
$a = 7;
$b = 5;
$c='molte persone';
$d='7 persone';
$e='5';
$a == $d;  // true, $d vale 7
$a === $d; // false, valgono entrambi 7 ma $a è un intero mentre $d è una stringa
$b > $c;   // true, $b vale 5 mentre $c vale 0
$e > $c;   // false: questo è un confronto fra due stringhe, quindi valgono le regole viste prima

--------------------------------------
Gli operatori logici
--------------------------------------
Con gli operatori logici possiamo combinare più valori booleani, oppure negarne uno (nel caso di NOT). Questi valori sono:

Operatore Descrizione
 Or o || valuta se uno degli operatori scritti è true (o false )
 And o && valuta se tutti gli operatori scritti sono true ( o false)
 Xor valuta se UNO dei 2 operatori e true e l'altro e false
 ! meglio chiamato come not, si usa come operatore, è true quando l'operatore e false e viceversa;

Altro esempio:
CODICE
<?
/*
ho messo dei numeri invece di delle variabili.... ma il risultato è lo stesso
*/
10 > 8 And 7 < 6; // false, perchè la prima condizione è vera ma la seconda è false
10 > 8 Or 7 < 6;  // true
9 > 5 And 5 == 5; // true, entrambe le condizioni sono true
9 > 5 Xor 5 == 5; // false, solo una delle due deve essere false perchè si verifichi lo 'Xor'
4 < 3 || 7 > 9;   // false, nessuna delle due condizioni è true
6 == 6 && 1 > 4;  // false, solo la prima condizione è true
?>



----------------------------------
Le espressioni Boleane
---------------------------------
Le espressioni Boleane sono delle espressioni matematiche.. esempio:
5 + 4 * 2 è un espressione matematica di qui il valore è 13 (5 + 8)
5 + (4 * 2) invece è un espressione di cui il valore è 18 xke la parentesi tonda và eseguita per prima
[5 + (4 * 2) ] - 10 + (5 * 4) è un espressione contenente 5 + 8 - 10 + 20
{4 - [2 - (1 / 0.5)] - 5} È un espressione anche essa
in php le espressioni boleane sono simili:
CODICE
<?
$a = 5 + 4 * 2; //$a è uguale a 13
$b = 5 + (4 * 2); //$b è uguale a 18
$c = (5 + (4 * 2)) - 10 + (5*4); // in php qualunque parentesi è tonda...
$d = (4 - (2 - (1 / 0.5)) - 5); //equivale a 4 - 2 - 0,5 - 5 quindi 4 - (2 - ( 0,5 - 5) ) quindi 4 - ( 2  - -4.5) quindi 4 - 6,5 ( in algebra meno per meno = più ) quindi di conseguenta dopo i nostri lunghi calcoli ( xD ) il risultato È - 6,5
?>

----------------------------------------------------------------------------------
Esercizi :hitler: :hitler:
----------------------------------------------------------------------------------
1)Fai un esempio di espressione boleana nel metodo matematico e nel metodo phpniano (non i miei esempi xD)
2)Come si valuta se le espressioni inserite sono tutte true o false?
3)Cos'è lo Xor?
4)Cosa indica il !== ?
5)Esiste un altro modo per scrivere || ?
6)Cosa indica >= ?
 
Top
0 replies since 14/9/2011, 20:31   3 views
  Share