En tots els llenguatges de programació existeixen estructures condicionals que permeten avaluar condicions i depenent del resultat poder executar unes instruccions o unes altres.
Per exemple, un programa que li indiques una nota, et dirà APROVAT o SUSPÉS depenent del valor numèric. El procediment que fariem nosaltres és el següent:
si nota >= 5
mostrar APROVAT
sino
mostrar SUSPÉS
A més tenim diverses opcions, condició simple, doble i composta.
SIMPLE
If condicio:
instruccio1
instruccio2
DOBLE
If condicio:
bloc1-instruccio1
bloc1-instruccio2
else:
bloc2-instruccio1
bloc2-instruccio2
COMPOSTA
If condicio:
bloc1-instruccio1
bloc1-instruccio2
elif condicio2:
bloc2-instruccio1
bloc2-instruccio2
elif condicio3:
bloc3-instruccio1
bloc3-instruccio2
else:
bloc4-instruccio1
bloc4-instruccio2
n<10: Aquesta expressió només donarà resultat True quan n continga un valor inferior a 10
n >= 1000: Aquesta expressió només donarà resultat True quan n continga un valor major o igual a 1000
n>10 and n<100: Aquesta només quan n estiga entre 10 i 100
Exemple de programa condicional SIMPLE:
print('Programa per saber si un número és múltiple de 3')
print('Si el número que escrius és divisible per 3, et mostraré')
print('el resultat de dividir el número entre 3.')
print('En cas contrari, no mostraré res més.')
n = input('Escriu un número: ')
n = eval(n)
if n%3==0:
print('Enhorabona, has escrit un número múltiple de 3')
div = n/3
print('El resultat de dividir',n,'entre 3 és',div)
Exemple de programa condicional DOBLE:
print('Programa per saber si un número és múltiple de 3')
n = input('Escriu un número: ')
n = eval(n)
div = n/3
if n%3==0:
print('Enhorabona, has escrit un número múltiple de 3')
print('El resultat de dividir',n,'entre 3 és',div)
else:
print('El número no es multiple de 3')
print('Al dividir',n,'entre 3 obtenim',div)
print('La divisio no es exacta')
Exemple de programa condicional COMPOST:
print('Indica la nota que has tret a Informatica')
n = input('Escriu la nota: ')
n = eval(n)
if n<5:
print('Suspes')
elif n < 6:
print('Suficient')
elif n < 9:
print('Notable')
else:
print('Sobresalient')
Exemple amb text i compost
print('Aquest programa compta els caracters del teu nom')
nom = input('Escriu el teu nom: ')
longitud = len(nom)
print('Hola',nom,'molt de gust de saludar-te')
if longitud<=7:
print('El teu nom te',longitud,'lletres')
else:
print('Tens un nom llarg amb,',longitud,'lletres')
if ' ' in nom:
print('A mes, es un nom compost')
else:
print('Pero no es un nom compost')
Exercici 1: Escriu un programa que genere les següents execucions
Exercici 2: Escriu un programa que genere les següents execucions
Exercici 3: Escriu un programa que comprove si la paraula indicada té 5 lletres o menys.
Si té més de 5, a més mostrarà les 4 primeres lletres i les 4 últimes.
Si té menys de 5, mostrarà la primera lletra i la última.
Exercici 4: Realitza un programa que calcule la lletra del DNI. Pots consultar aquest enllaç on explica com es calcula (només els DNI espanyols)