Sunteți pe pagina 1din 20

Python Fundamentals - 5

Silviu Ojog
Recapitulare
• Ce am făcut data trecută?

Silviu Ojog
Operatori logici
• Cu operatorii logici combinăm valori boolean sau
expresii din care rezultă valori boolean.
• Cu operatorii logici, de asemenea, negăm o valoare
boolean.
• Operatorii logici sunt:
or partea din stânga sau dreapta trebuie să fie True
Silviu Ojog
and partea din stânga şi dreapta trebuie să fie True

not True devine False, iar False devine True


Operatorul "and" (și)
a b Rezultat
0 0 0
0 1 0
1 0 0
1 1 1 Silviu Ojog

• Adevărat când ambele sunt adevărat


Operatorul "and" (și)
• Ambele părţi trebuie să aibă valoarea True

16 < 29 and 5 > 3 e 16 < 15 and 5 > 3 se


Tru Fal

16 < 29 and True e 16 < 29 and False se


Tru Fal

Silviu Ojog else


x == 3 and y == 5 Tru
e x == 3 and y == 5 FaFla
s
pentru x = 3 şi y = 5 pentru x = 4 şi y = 6
Operatorul "or" (sau)
a b Rezultat
0 0 0
0 1 1
1 0 1
1 1 1 Silviu Ojog

• Adevărat când cel puțin una este adevărată


Operatorul "or" (sau)
• Cel putin o parte trebuie să aibă valoarea True

16 < 29 or 5 > 3 e 16 < 15 or -5 > 3 se


Tru Fal

16 < 29 or True e 16 < -29 or False se


Tru Fal

Silviu Ojog else


x == 3 or y == 5 Tru
e x == 3 or y == 5 FaFla
s
pentru x = 3 şi y = 5 pentru x = 4 şi y = 6
Operatorul "not" (și)
a not a
0 1
1 0
• Neagă valoarea booleană Silviu Ojog
Operatorul "not" (și)
• Neagă valoarea booleană

not 3 > 5 Tru


e not 3 < 5 al se
F

not False Tru


e not True al se
F

Silviu Ojog
not not 3 < 5 Tru
e not not 3 > 5 al se
F
Bool Operators
Ce se printează:
print(not (True and False) or (not True and False))

Silviu Ojog
Bool Operators
Ce se printează:
print(not (True and False) or (not True and False))
R:
True
# not (False) or False
# True or False Silviu Ojog
Bool Operators
Ce se printează:
A = True
B = False
print(not (A or B) == not A and not B)

Silviu Ojog
Bool Operators
Ce se printează:
A = True
B = False
print(not (A or B) == not A and not B)
R:
True
# not (True) = not True and not False Silviu Ojog
# False == False
Asignare
Care expresie nu este corectă:
a) a += b însemnă a = (a + b)
b) a *= b însemnă a = (a * b)
c) a %= b însemnă a = (a % b)
d) a != b însemnă a = (a ! b)
Silviu Ojog
Asignare
Care expresie nu este corectă:
a) a += b însemnă a = (a + b)
b) a *= b însemnă a = (a * b)
c) a %= b însemnă a = (a % b)
d) a != b însemnă a = (a ! b)
Silviu Ojog
Exercițiul cu bancnote
• Creaţi un program în care utilizatorul va insera o sumă întreagă.
• Programul trebuie să calculeze şi să afişeze numărul
corespunzător de bancnote, unde în program sunt definite
bancnotele cu valorile: 10, 5, 2 şi 1

Silviu Ojog

Exercițiul cu XoY
• În cadrul programului este definită o suprafata in cadranul
XoY: x0,y0,width şi height.
• Utilizatorul introduce coordonatele userx (x2) şi usery (y2)
în program, iar programul afişează True dacă punctul se
găseşte în cadrul suprafetei definite sau False dacă se
găseşte în afara acesteia.
Silviu Ojog


Operatorul "is" (identitate)
• Operatorul Identity verifică dacă ambii operanzi se
găsesc la aceeaşi adresă de memorie:
[1,2,3]
a = [1,2,3] valorile Y
sunt identice
b = [1,2,3]
print(a == b)
print(a is b)
adres
ele nu [1,2,3] Silviu Ojog
sunt i
denti ce X
Operatorul "in" (membership)
• Verifică dacă o dată se găseşte într-o colecţie de
date
arr = [1,2,4,5] arr = [1,2,4,5]
print(3 in arr) print(4 in arr)

False, pentru că True, pentru că


numărul 3 nu există numărul 4 există în
în colecţie colecţie Silviu Ojog
Exercițiul cu parola
• În cadrul programului sunt definite variabilele: db_username
şi db_password.
• Utilizatorul introduce numele de utilizator şi parola.
• La ieşire se afişează True dacă numele de utilizator şi parola
corespund celor din program sau False dacă acestea nu
corespund.

Silviu Ojog

S-ar putea să vă placă și