Subido por Adri Potro

pedreira bar adrian PROG04 Tarea entregar 02

Anuncio
Adrián Pedreira Bar
PSEUDOCÓDIGO
Visualizar “Introduce o número de alumnos: ”
Pedir numero_alumnos
Si (numero_alumnos > 40)
Visualizar (O número máximo de alumnos e 40)
Se non
contador = 0
Mentres (numero_alumnos != contador)
Visualizar “Introduce o nome do alumno: “
Nome_alumno = Pedir nome
alumnos[posición_final] = nome_alumno
Visualizar “Introduce o a nota de ‘nome_alumno’: “
nota_alumno = Pedir nota
notas[posición_final] = nota_alummno
Si (nota_alumno >= 5)
num_aprobados++
Fin Si
contador++
Visualizar “- Nota media: ‘nota_media’”
Visualizar “- Número de aprobados: ‘num_aprobados’”
Visualizar “- Número de suspensos: ‘notas.tamaño - num_aprobados’”
Visualizar “- Listado aprobados: “
Para posición = 0 hasta i == alumnos.tamaño
Si (notas[posición] >= 5)
Visualizar “’alumno[posición]’ + : + notas[posición]”
Fin Si
Visualizar “- Listado suspensos: “
Para posición = 0 hasta i == alumnos.tamaño
Si (notas[posición] < 5)
Visualizar “’alumno[posición]’ + : + notas[posición]”
Fin Si
Fin Si
Tarefa a entregar 02
Adrián Pedreira Bar
Tarefa a entregar 02
IMPLEMENTACIÓN (Python 3.6)
from functools import reduce #Importación do método reduce
print("Introduce o número de alumnos") #Entrada do número de alumnos
num_alumnos = int(input())
if (num_alumnos > 40): #Avaliación do número de alumnos
print("O número máximo de alumnos e 40")
else:
#Declaración de variables
notas = []
alumnos = []
num_aprobados = 0
espacios_branco = 20
#Bucle. Tantas veces como alumnos haxa, solicita a entrada de nome e nota
# e os engade aos arrays "notas" e "alumnos", tamén calcula o Nº aprobados
while num_alumnos != 0:
print("Introduce o nome do alumno")
nome_alumno = input()
alumnos.append(nome_alumno)
print("Introduce a nota de " + nome_alumno)
nota_alumno = float(input())
notas.append(nota_alumno)
if nota_alumno >=5 :
num_aprobados += 1
num_alumnos -= 1
#Función para o sumatorio de notas e cálculo da media
def suma(a,b): return a + b
nota_media = reduce(suma,notas)/len(notas)
#Visualización de nota media e Nº aprobados
print("- Nota media: " + str(nota_media))
print("- Número de aprobados: " + str(num_aprobados))
print("- Número de suspensos: " + str(len(notas) - num_aprobados))
print("- Listado aprobados:")
#Bucle. Itera sobre o array alumnos avaliando se está aprobado
# en caso correcto, visualiza o seu nome e nota
for i, alumno in enumerate(alumnos):
if notas[i] >= 5:
print(" "*espacios_branco + str(alumno) + ": " + str(notas[i]))
#Bucle. Itera sobre o array alumnos avaliando se está aprobado
# en caso correcto, visualiza o seu nome e nota
print("- Listado suspensos:")
for i, alumno in enumerate(alumnos):
if notas[i] < 5:
print(" "*espacios_branco + str(alumno) + ": " + str(notas[i]))
Adrián Pedreira Bar
EXECUCIÓN
Tarefa a entregar 02
Descargar