Els operadors són símbols especials que s'usen per combinar variables i/o valors.
Operadors matemàtics
El primer grup d'operadors que veurem són els operadors matemàtics, com ara més (+), menys (-), multiplicació (*) i divisió (/).
Exemple de programa senzill que utilitza aquests operadors:
# Ara veurem un exemple d'operadors matemàtics
# Inicialització de variables
a=1
b=2
c=a+b
print(c)
Exercicis:
Analitza el codi anterior. Què ha de sortir imprès?Quina diferència hauria amb "print("c")"?
Escriu un programa que donats a = 3 i b = 2 retorni el resultat d'aplicar tots els operadors matemàtics.
Operadors Relacionals Python
Els operadors relacionals comparen dos valors per veure si són iguals o un és més o menys que l'altre. El operadors són:
El principal ús dels operadors relacionals anteriors és en sentències condicionals, o per dir-ho simplement en operacions del tipus: "Què passa si es compleixen certes condicions?".
Sentències de control condicionals
Aquestes sentències de control serveixen per controlar el flux del programa en funció de si es compleix o no certa condició indicada.
Les paraules clau que es fan servir en la sintaxi d'aquestes estructures són if, else i elif, i la seva utilització és tan clara que bastarà amb un exemple per entendre-ho. Diguem que estàs escrivint un programa de tarifes dels autobusos i vols saber el preu correcte en funció de l'edat. Com es descriuria aquest problema?
Si el passatger és menor de 18 anys, el preu és de tarifa jove (1€).
Si no, si el passatger és major de 18 anys però menor de 65, el preu és de tarifa normal (1'5€).
Si no, a qualsevol altre cas, la tarifa és ultrarreduïda (0'5€).
Ara, escriurem aquest mateix algorisme en Python. És una sentència condicional:
if edat < 18:
print("preu = 1€")
elif edat < 65:
print("preu = 1'5€")
else:
print("preu = 0'5€")
Ara ens falta escriure el codi Python complet perquè el programa interactui amb l'usuari.
"""Aquest programa demana a l'usuari el nom i l'edat i retorna el preu d'un billet"""
# 1. Declarar variables
tarifa_jove = 1
tarifa = 1.5
tarifa_gentgran = 0.5
# 2. Demanar el nom de l'usuari i desar-ho a la variable nom
nom = input("Hola, quin és el teu nom?")
# 3. L'usuari introdueix la seva edat
edat = int(input("Quina és la teva edat?"))
# 4. Determinar el preu
if edat < 18:
print("El preu és", tarifa_jove)
elif edat < 65:
print("El preu és", tarifa)
else:
print("El preu és", tarifa_gentgran)
Cal notar que aquest conjunt d'instruccions (if, elif, else) sempre executen alguna acció (o una o altra condició es complirà).
D'altra banda, s'ha de destacar:
La utilització de "input" per poder llegir dades que l'usuari escriu a la pantalla amb el teclat. El resultat d'aquest mètode sempre és una cadena se text ("String"), i si es vol transformar la entrada en un nombre s'ha de fer servir el mètode “int” per llegir un nombre sencer.
S'ha utilitzat la indentació que a Python serveix per definir quin conjunt d'instruccions estan dins d'un altre. És a dir, a l'exemple:
if edat < 18:
print("El preu és", tarifa_jove)
El comandament "print" està dins del "if" i només s'executarà si la condició es compleix. A més, si hagues més línies indentades com el "print" totes quedarien sotmeses al compliment d'aquest condicional.
EXERCICIS
3. Escriu un programa que sigui capaç de distingir els nombres parells dels senars, tenint en compte que un parell sempre és divisible entre 2 (el residu de la divisió és 0) i un senar no ho és (el residu de la divisió és 1).
NOTA: A Python, per esbrinar el residu d'una divisió es fa servir l'operador %:
if (a % 2) == 0