1
resposta

[Sugestão] Simulação de aplicação de uma prova a oitenta estudantes



#
# este código: 
#
# 1 - simula a aplicacao de uma prova a oitenta estudantes diferentes 
#     que recebem notas variando de 19 (inclusive) a 89 (inclusive)
# 2 - escreve enumeracao das oitenta notas da prova
# 3 - apresenta as oitenta notas da prova em um gráfico 
#


import random 

#
# definir a contagem de estudantes 
#
contagem = 80 

#
# parametro para definir ordem de prova 
#
primeiro_parametro_range_ordem_incluido = 1 
segundo_parametro_range_ordem_excluido  = 1 + contagem 
passo_range_ordem = 1 

#
# iniciar a lista de ordem de prova 
#
ordem_prova = []

#
# parametro para definir limite de nota de prova
#
menor_nota = 19 
maior_nota = 89 

#
# iniciar a lista de nota de prova 
#
nota_prova = []

#
# parametro para geracao "quase aleatoria" de nota 
# entre limites inferior e superior
#
primeiro_parametro_randrange_nota_incluido = menor_nota
segundo_parametro_randrange_nota_excluido  = 1 + maior_nota

#
# adicionar elemento a lista 
#
for ordem in range ( primeiro_parametro_range_ordem_incluido , segundo_parametro_range_ordem_excluido , passo_range_ordem ) :

    ordem_prova .append ( ordem )
#
#   sortear nota "quase aleatoria" de um estudante 
#
    nota = random .randrange ( primeiro_parametro_randrange_nota_incluido , segundo_parametro_randrange_nota_excluido )

    nota_prova .append ( nota ) 

#
# ecoar lista de ordem de prova
#
print ( 'ordem_prova = ' , ordem_prova )
print ( )

#
# verificar cardinalidade das duas listas
#
print ( f'cardinalidade de ordem_prova = { len ( ordem_prova ) } ' )
print ( ) 

#
# ecoar lista de nota de prova
#
print ( 'nota_prova = ' , nota_prova ) 
print ( ) 

#
# parametrizar enumeracao de ordem e nota de prova 
#
primeiro_indice_de_lista_incluido = 0 
ultimo_indice_de_lista_excluido = len ( ordem_prova)  

#
# escrever titulo de enumeracao 
#
print ( 'enumeração de: ordem de prova ... nota de prova ')
print ( )

#
# simular realizacao de provas de <contagem> estudantes diferentes
#
#
for indice in range ( primeiro_indice_de_lista_incluido , ultimo_indice_de_lista_excluido ) :

    ordem_de_prova = ordem_prova [ indice ]

    nota_de_prova = nota_prova [ indice ] 
#
#   escrever enumeracao de ordem e nota de prova    
#
    print ( f'ordem = {ordem_de_prova} ... nota = {nota_de_prova} ' ) 

print ( )    
print ( ' -- fim de enumeração -- ' )    

#
# lançar em grafico a ordem de prova e a nota de prova 
#
import matplotlib.pyplot as plt

x = ordem_prova
y = nota_prova
plt .plot ( x , y , marker='o' )
plt .title ( 'Notas de prova de matemática' )
plt .xlabel ( 'Ordem de prova' )
plt .ylabel ( 'Nota de prova' )
plt .show ()
1 resposta

Olá, tudo bem? Espero que sim!

Muito bom! É sempre interessante praticar para se aprimorar cada vez mais.

Os comentários ao longo do código são muito úteis para se situar o que faz cada coisa.

Bons estudos!