MASTER Information Technology Excellence Road (I.T.E.R.)
Programmare in C
(boolean)
Maurizio Palesi
Salvatore Serrano
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
1
Boolean
n Il nome boolean proviene da George Bool un
matematico che inventò delle strutture matematiche
note algebre di Bool
n Valori
èHa solo 2 valori: vero (1), falso (0)
n Operazioni
èOperatori logici
AND &
(binario)
OR
|
(binario)
XOR ^
(binario)
NOT !
(unario)
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
2
1
Tavole della Verità
NOT
x
F
V
!x
V
F
3
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
Tavole della Verità
x
F
F
V
V
AND
y
F
V
F
V
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
x&y
F
F
F
V
4
2
Tavole della Verità
x
F
F
V
V
OR
y
F
V
F
V
x|y
F
V
V
V
5
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
Tavole della Verità
x
F
F
V
V
XOR
y
F
V
F
V
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
x^y
F
V
V
F
6
3
Esempio
Se
a è vero
b è falso
c è falso
a | (b & c)
vero
vero
!a | (b & c)
falso
falso
(a | b) & c
falso
falso
(a | b) & !c
vero
vero
a & (b | c)
falso
falso
a & (!b | c)
vero
vero
a|b|c
vero
vero
!a | b | c
falso
falso
7
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
Come prima… ma in C
int
int
int
a = 1;
b = 0;
c = 0;
a || (b && c)
vero
vero
!a || (b && c)
falso
falso
(a || b) && c
falso
falso
(a || b) && !c
vero
vero
a && (b || c)
falso
falso
a && (!b || c)
vero
vero
a || b || c
vero
vero
!a || b || c
falso
falso
Master ITER ♦ Informatica di Base ♦ Maurizio Palesi, Salvatore Serrano
8
4