Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

EXTENSIÓ CONCEPTES ALGORISMIA

Exercici 3.1.21. Corregeix els errors sintàctics del següent programa:

Principals errors:

El nom de la variable contrasenya després canvia a contraseña cosa que hauria de


ser el mateix nom perquè funcioni.

L'operador de comparació a == per a comparar si la contrasenya introduïda és igual a


"abracadabra".

La clàusula else amb dos punts (:) després de else per a indicar l'execució en cas
que la condició de l'if no sigui veritat.

L’error en la sintaxi de la instrucció else afegint dos punts (:) al final de la línia.

Exercici 3.1.22. Detecta i corregeix els errors del següent programa que aplica l'IVA
a una factura:

Aquí els errors son els següents:

L’error més evident que tenim aquí es que aplica_iva no està definida, està definida
abaix, però s’ha de definir abans de fer la funció. També un altre és que la funció
input retorna una cadena de text (string), però necessitem un valor numèric per
calcular l'IVA. Per tant, hem de convertir la entrada a un tipus numèric, com a float.
Exercici 3.1.23. Detecta i corregeix els errors del següent programa que calcula el
producte escalar de dos vectors:

Els principals errors son:

- Utilització de range(len(u)) en el bucle for per accedir als índexs dels vectors.

- Càlcul del producte escalar en el bucle amb result += u[i] * v[i].

- Retornar result com a resultat final del producte escalar.

Exercici 3.1.24. Detecta i corregeix els errors del següent programa que retorna i
elimina el telèfon d'una guia telefònica a través del nom de l'usuari:
En primer lloc, el programa utilitza una variable listin que no està definida, en lloc
d'això, cal utilitzar el diccionari guia_telefons que conté la informació de la guia
telefònica.

A més, el programa intenta eliminar un usuari de la guia sense comprovar primer si


aquest usuari existeix. S'ha afegit una comprovació per verificar si l'usuari és present
al diccionari abans de procedir a eliminar-lo.

Finalment, la funció elimina intenta retornar el número de telèfon associat a l'usuari


després d'eliminar-lo. En comptes d'això, la funció ha estat modificada per retornar el
número de telèfon de l'usuari si aquest és troba a la guia, o bé un missatge indicant
que l'usuari no ha estat trobat si no es troba a la guia.

Exercici 3.1.25. Detecta i corregeix els errors del següent programa que multiplica
dues matrius:

El programa proporcionat intenta multiplicar dues matrius. No obstant això, conté


diversos errors que cal corregir perquè funcioni correctament.

Un d’ells és en el bucle for k in range(len(a[0]+1)), l'operació len(a[0]+1) no és


correcta. S'ha d'afegir el parèntesi a len(a[0])+1 perquè sumi un al nombre de
columnes d'a.
Exercici 3.1.26. Localitza l'error en el següent bloc de codi. Crea una excepció per a
evitar que el programa es bloquegi i a més explica en un missatge a l'usuari la
causa i/o solució:

Exercici 3.1.27. Localitza l'error en el següent bloc de codi. Crea una excepció per a
evitar que el programa es bloquegi i a més explica en un missatge a l'usuari la
causa i/o solució:

L'error en el següent bloc de codi és un IndexError, ja que s'està intentant accedir a


un element fora dels límits de la llista.

Exercici 3.1.28. Localitza l'error en el següent bloc de codi. Crea una excepció per a
evitar que el programa es bloquegi i a més explica en un missatge a l'usuari la
causa i/o solució:
Exercici 3.1.29. Localitza l'error en el següent bloc de codi. Crea una excepció per a
evitar que el programa es bloquegi i a més explica en un missatge a l'usuari la
causa i/o solució:

Exercici 3.1.30. Realitza una funció anomenada agregar_una_vegada(llista, el) que


rebi una llista i un element. La funció ha d'afegir l'element al final de la llista amb la
condició de no repetir cap element. A més si aquest element ja es troba en la llista
s'ha d'invocar un error de tipus ValueError que has de capturar i mostrar aquest
missatge en el seu lloc:

Error: Impossible afegir elements duplicats => [element].

You might also like