Diferència entre revisions de la pàgina «ASIX-M3-UF1-A4.2- Solucions Exercicis llistes»

De wikiserver
Dreceres ràpides: navegació, cerca
(Pàgina blanquejada)
Línia 1: Línia 1:
== A4.2 Exercicis Llistes ==
 
  
1. Fes un programa que emmagatzemi els mòduls de primer d'ASIX ("Implantació de sistemes operatius", "Gestió de bases de dades", "Programació bàsica" ...) en una llista i a continuació, la mostri per pantalla.
 
 
<source lang = "python">
 
print("Programa mòduls 1r d'ASIX")
 
print("-------------------------")
 
 
# Constant
 
MODULS = ["Sistemes operatius", "Gestió de bases de dades", "Programació bàsica", "Llenguatge de marques", "Fonaments de maquinari", "Planificació i administració de xarxes", "Implantació d'aplicacions web", "Formació i orientació laboral"]
 
 
# Recórrer la llista i mostrar cada mòdul
 
for modul in MODULS :
 
    print(modul)
 
</source>
 
 
 
2. Fes un programa que emmagatzemi els mòduls de primer d'ASIX ("Implantació de sistemes operatius", "Gestió de bases de dades", "Programació bàsica" ...) en una llista i a continuació, demani la nota obtinguda de cada mòdul i ens digui quants mòduls ha aprovat, ha suspès o té convalidats.
 
 
<source lang = "python">
 
print("Programa mòduls aprovats, suspesos i convalidats de 1r d'ASIX \n")
 
 
# Constant
 
MODULS = ["Sistemes operatius", "Gestió de bases de dades", "Programació bàsica", "Llenguatge de marques", "Fonaments de maquinari", "Planificació i administració de xarxes", "Implantació d'aplicacions web", "Formació i orientació laboral"]
 
 
# Inicialitzar variables
 
aprovats = 0
 
suspesos = 0
 
convalidats = 0
 
 
# Recórrer la llista i demanar cada nota
 
for modul in MODULS :
 
    nota = input("Nota de %s: " %modul)
 
    if nota == "convalidat":
 
      convalidats += 1
 
    elif int(nota) >= 5 :
 
      aprovats += 1
 
    else :
 
      suspesos += 1
 
 
# Mostrar el resultat
 
 
print("Aprovats: ", aprovats)
 
print("Suspesos: ", suspesos)
 
print("convalidats: ", convalidats)
 
</source>
 
 
 
3. Fes un programa que emmagatzemi els mòduls de primer d'ASIX ("Implantació de sistemes operatius", "Gestió de bases de dades", "Programació bàsica" ...) en una llista i a continuació, demani la nota obtinguda de cada mòdul i elimini de la llista els aprovats i convalidats i mostri els mòduls pendents d'aprovar.
 
 
<source lang = "python">
 
print("Programa mòduls pendents de 1r d'ASIX \n")
 
 
# Inicialitzar moduls
 
moduls = ["Sistemes operatius", "Gestió de bases de dades", "Programació bàsica", "Llenguatge de marques", "Fonaments de maquinari", "Planificació i administració de xarxes", "Implantació d'aplicacions web", "Formació i orientació laboral"]
 
 
# Inicialitzar variables
 
aprovats = []
 
 
# Recórrer la llista i demanar cada nota
 
for modul in moduls :
 
    nota = input("Nota de %s: " %modul)
 
    if nota == "convalidat" or int(nota) >= 5 :
 
      aprovats.append(modul)
 
 
# Treure els mòduls aprovats
 
for modul in aprovats :
 
    moduls.remove(modul)
 
 
# Mostrar els mòduls pendents
 
print("Mòduls pendents: "+ str(moduls))
 
</source>
 
 
 
4. Feu un programa que donades dues llistes inicialitzades amb els valors [-3, 5, 1, -4, 8, 20, -9, 2, 11, -1], posi a una tercera llista, per a cada posició, la suma dels elements de les altres llistes.
 
 
<source lang = "python">
 
# Inicialitzar les llistes
 
llista1 = [-3, 5, 1, -4, 8, 20, -9, 2, 11, -1]
 
llista2 = [-3, 5, 1, -4, 8, 20, -9, 2, 11, -1]
 
 
# Declarar la llista resultat
 
resultat = []
 
 
# Recórrer les llistes
 
for i in range(len(llista1)):
 
 
    # suma de cada posició de les dues llistes
 
    resultat.append(llista1[i] + llista2[i])
 
 
# Mostrar la llista amb el resultat
 
print(resultat)
 
</source>
 
 
 
5. Fes un programa que donada una llista de números ja inicialitzada, la recorri amb un for i quan surti del for imprimeixi el valor més petit de la taula.
 
 
<source lang = "python">
 
# Inicialitzar la llista
 
llista_num = [-3, 5, 1, -4, 8, 20, -9, 2, 11, -1]
 
 
# Inicialitzar més petit
 
mesPetit = llista_num[0]
 
 
# Recórrer la llista
 
for numActual in llista_num :
 
 
    # En cas que el número actual sigui més petit s'actualtiza mesPetit
 
    if numActual < mesPetit :
 
      mesPetit = numActual
 
 
# Mostrar la llista amb el resultat
 
print("Número més petit de la llista:", mesPetit)
 
</source>
 
 
 
6. Fes un programa que donada una llista de números ja inicialitzada, imprimeixi per pantalla els valors en ordre invers.
 
 
<source lang = "python">
 
# Inicialitzar la llista
 
llista_num = [-3, 5, 1, -4, 8, 20, -9, 2, 11, -1]
 
 
# Recórrer la llista en ordre invers
 
for num in reversed(llista_num) :
 
   
 
    # Mostrar el número de la posició índex
 
    print(num, end= "  ")
 
</source>
 
 
 
7. Fes un programa que faci una rotació cap a l’esquerra o cap a la dreta (segons ens indiqui l’usuari) de tots els elements de una llista (en rotació esquerra l’element que està a la primera posició passarà a l’ultima i en rotació dreta l’element que està l’últim passarà a la primera posició).
 
 
<source lang = "python">
 
# Inicialitzar la llista
 
llista_num = [1, 2, 3, 4, 5, 6, 7, 8, 9]
 
 
# Inicialitzar sentit rotació
 
rotacio = input("Rotació esquerra o dreta? ")
 
 
if rotacio == "esquerra" :
 
 
# Rotació esquerra
 
  aux = llista_num[0]
 
  for index in range(len(llista_num)-1) :
 
      llista_num[index] = llista_num[index +1]
 
  llista_num[len(llista_num)-1] = aux
 
  print(llista_num)
 
 
elif rotacio == "dreta" :
 
 
# Rotació dreta
 
  aux = llista_num[len(llista_num)-1]
 
  for index in range(len(llista_num)-1, 0, -1) :
 
      llista_num[index] = llista_num[index-1]
 
  llista_num[0] = aux
 
  print(llista_num)
 
 
else :
 
# Opció incorrecte
 
  print("Opció incorrecte: opcions vàlides són esquerra o dreta")
 
</source>
 
 
 
8. Feu un programa anomenat '''ParaulesSenars''' que llegeixi una frase escrita en una sola línia des del teclat i tot seguit escrigui les paraules que hi ha en posició senar (la primera, la tercera, etc.). Per exemple, si s'escriu “Hi havia una vegada un lloc...”, es mostrarà “Hi una un”.
 
 
<source lang = "python">
 
print("Programa paraules senars d'una frase")
 
 
# Inicialitzar variables
 
frase = input("Introdueix una frase: ")
 
index = 0
 
 
# Obtenir llista de paraules
 
paraules = frase.split(' ')
 
 
# Recórrer la llista i mostrar les paraules senars
 
while index < len(paraules) :
 
    # Mostrar la paraula
 
    print(paraules[index])
 
    # Paraula següent
 
    index +=2
 
 
# Amb for ...
 
'''
 
for index in range(0, len(paraules), 2):
 
    print(paraules[index])
 
'''
 
</source>
 

Revisió del 17:24, 10 set 2022