Python - Solicite estudiantes y sus notas para obtener la media

 
Vista:
sin imagen de perfil
Val: 10
Ha disminuido su posición en 10 puestos en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por Marco (6 intervenciones) el 23/11/2019 03:08:45
Buenas no logro resolver un ejercicio que nos dejaron, el enunciado dice así;
Desarrolle un programa que pida una cantidad de estudiantes (1..30) y luego solicite la nota (0..100) para esa cantidad de personas. Realice la solicitud de datos en funciones diferentes. Al final imprima el promedio de las notas ingresadas, la nota mayor y la menor.

Iba realizándolo algo similar a;

1
2
3
4
5
6
7
8
9
10
estudiantes=[]
notas=[]
 
def solicitarestudiante(mensaje):
    dato=int(input(mensaje))
    return dato
cantidad=solicitarinfo("Deme la cantidad de estudiantes")
 
def solicitarnonta(mensaje):
    dato=int(input(mensaje))

pero o logro terminarlo, agradezco la ayuda que me puedan brindar.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 10
Ha disminuido su posición en 10 puestos en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por Marco (6 intervenciones) el 23/11/2019 16:17:08
Ayer estuve tratado de avanzar en el código y pero quedó pegado en el while

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
estudiantes=[]
notas=[]
 
def solicitarestudiante(mensaje):
    dato=int(input(mensaje))
    return dato
cantidad=solicitarestudiante("Deme la cantidad de estudiantes")
 
def solicitarnonta(mensaje):
    dato=int(input(mensaje))
 
 
personas=solicitarestudiante(cantidad)
cont=0
while cont>personas:
    nota = input("Ingrese la nota")
    notas.append(nota)
    cont+=1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por joel (901 intervenciones) el 23/11/2019 22:32:26
Hola Marco, aquí una manera muy básica:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
estudiantes=[]
 
def solicitarestudiante(mensaje):
    while True:
        try:
            dato=int(input(mensaje))
            return dato
        except:
            print("Tiene que indicar un valor numerico")
 
cantidad=solicitarestudiante("Deme la cantidad de estudiantes")
 
def solicitarnonta(cantidad, mensaje):
    notas=[]
    while len(notas)!=cantidad:
        try:
            dato=int(input(mensaje))
            notas.append(dato)
        except:
            print("Tiene que indicar un valor numerico")
    return notas
 
notas=solicitarnonta(cantidad,"Ingrese la nota")
 
print("Media", sum(notas)/cantidad)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 10 puestos en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por Marco (6 intervenciones) el 23/11/2019 22:52:56
Muchas gracias Joel,

Solo tengo una duda como haría si quiero que la cantidad máxima de estudiantes sea 30?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por joel (901 intervenciones) el 23/11/2019 23:01:51
Hola Marco, tendras que poner un condicional si el valor es superior a 30... algo así:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
estudiantes=[]
 
def solicitarestudiante(mensaje):
    while True:
        try:
            dato=int(input(mensaje))
            if dato<=30:
                return dato
            print("El numero de estudiantes no puede superar los 30")
        except:
            print("Tiene que indicar un valor numerico")
 
cantidad=solicitarestudiante("Deme la cantidad de estudiantes")
 
def solicitarnonta(cantidad, mensaje):
    notas=[]
    while len(notas)!=cantidad:
        try:
            dato=int(input(mensaje))
            notas.append(dato)
        except:
            print("Tiene que indicar un valor numerico")
    return notas
 
notas=solicitarnonta(cantidad,"Ingrese la nota")
 
print("Media", sum(notas)/cantidad)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 10
Ha disminuido su posición en 10 puestos en Python (en relación al último mes)
Gráfica de Python

Solicite estudiantes y sus notas para obtener la media

Publicado por Marco (6 intervenciones) el 23/11/2019 23:14:40
Gracias por la ayuda Joel.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar