Capítol 3 — Operacions i input
Capítol 3

Operacions i input

Python pot fer càlculs. A més, pot demanar dades a l'usuari amb input(). Combinant les dues coses, podràs fer programes que rebin informació, la processin i mostrin el resultat.

Operacions aritmètiques

Python pot fer les operacions matemàtiques habituals. Les escrius com ho faries en una calculadora:

Fixa't que la divisió / sempre retorna un float (nombre amb decimals), fins i tot si el resultat és exacte. Hi ha dues operacions més que són molt útils:

La divisió entera // talla els decimals. El residu % retorna el que sobra. La potència ** fa exponenciació. Aquestes tres operacions les faràs servir més del que t'imagines.

Operacions amb variables

Les operacions es poden fer directament amb variables. Això és el que converteix Python en una eina poderosa — pots guardar dades, operar-hi i mostrar el resultat:

Primer es creen les variables base i altura. Després es calcula base * altura i es guarda el resultat a area. Finalment, es mostra tot amb una f-string.

Operacions amb strings

Dos operadors funcionen també amb strings, però amb un significat diferent:

El + entre strings els concatena (els enganxa). El * entre un string i un número el repeteix.

Atenció: no pots sumar un string i un número directament. Executa l'exemple i observa l'error:

Python no sap com sumar el text "Tinc " amb el número 16. Per solucionar-ho, pots convertir el número a string amb str(), o millor encara, fer servir una f-string: f"Tinc {edat} anys". Corregeix l'error amb qualsevol de les dues maneres.

Demanar dades: input()

Fins ara tots els valors estaven escrits directament al codi. Però un programa de veritat sovint necessita rebre dades de fora. La funció input() llegeix una línia de text que l'usuari escriu.

En els simuladors d'aquest curs, l'input ve predefinit (no el teclat). A cada exemple t'indicarem quins valors rep el programa.

En l'exemple següent, el programa rep el nom Ada com a input:

input() sempre retorna un string, encara que l'usuari escrigui un número. Això és molt important i és la font de molts errors de principiant.

Convertir tipus: int() i float()

Si vols fer operacions matemàtiques amb un valor que ve d'input(), primer l'has de convertir a número. Tens dues funcions:

  • int("42") — converteix el string "42" al número enter 42.
  • float("3.14") — converteix el string "3.14" al número decimal 3.14.

L'exemple següent rep el número 7 com a input i en calcula el doble:

Podem escriure-ho de forma més compacta, fent la conversió directament:

La forma int(input()) és un patró que veuràs molt sovint: llegeix una línia i la converteix a enter en un sol pas.

Múltiples inputs

Cada crida a input() llegeix una línia nova. Si necessites dos valors, fas dues crides. L'exemple següent rep 5 i 3 en dues línies separades:

Posant-ho tot junt

Ara ja tens les peces per fer un programa complet: llegir dades, operar-hi i mostrar el resultat. L'exemple següent calcula l'àrea d'un rectangle a partir de la base i l'altura. Rep 8 i 5:

Fixa't en l'estructura: llegir → calcular → mostrar. Molts programes segueixen aquest patró.

Exercici

Escriu un programa que llegeixi dos nombres enters (un per línia) i imprimeixi la seva suma, la seva diferència i el seu producte, amb el format exacte que veus a sota.

El programa rebrà com a input els números 12 i 4. La sortida ha de ser exactament:

Suma: 16
Diferència: 8
Producte: 48

Resum

  • Python fa aritmètica amb +, -, *, /, //, %, **.
  • Amb strings, + concatena i * repeteix.
  • input() llegeix una línia de text (sempre retorna un str).
  • int() i float() converteixen strings a números.
  • El patró int(input()) llegeix i converteix en un sol pas.
  • Estructura típica d'un programa: llegir → calcular → mostrar.