 |
|
Hoje é Ter Mai 22, 2012 10:27 am
|
Ver mensagens sem resposta | Ver tópicos ativos
| Autor |
Mensagem |
|
Claudinei
Data de registro: Dom Nov 23, 2008 8:59 pm Mensagens: 13 Localização: Maringá
|
 Exercício
Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # # Lição da Aula nº 10 # Autor: Claudinei Pereira # # 1) Sala de aula: Faça um programa que pergunte o número de alunos em uma sala # de aula, depois pergunte o nome de cada um, após isso ele deve pedir 4 notas # de cada aluno e fazer a média entre elas, se a média for maior que 6 o aluno # está aprovado, senão reprova. No fim deve ser exibida uma tabela assim: # # Nome do aluno - nota1, nota2, nota3, nota4 - media - aprovado/reprovado print("Sala de Aula\n") alunos = [] medias = {} NumAlu = int(raw_input("Digite o número de alunos da sala: "))
while NumAlu != 0: alunos.append(str(raw_input("Digite o nome do aluno: "))) NumAlu -= 1
for num in range(len(alunos)): notas = [] for i in range(1,5): nota = float(raw_input("Digite a nota %d do aluno %s: " % (i, (alunos[num])))) if nota > 10: aviso = float(raw_input("Somente notas de 0 a 10. Digite um número" " de 0 a 10: ")) notas.append(aviso) else: notas.append(nota) medias[alunos[num]] = notas
for k, v in medias.iteritems(): media = float((v[0] + v[1] + v[2] + v[3]) / 4) if media <= 6.0: resultado = "Reprovado" else: resultado = "Aprovado" print("Aluno: %s" % k) print("Notas: %1.1f, %1.1f, %1.1f, %1.1f" % (v[0], v[1], v[2], v[3])) print("Média: %1.1f" % media) print("Resultado: %s\n" % resultado)
|
| Dom Jan 18, 2009 2:39 pm |
|
 |
|
erlon.cabral
Data de registro: Dom Dez 14, 2008 7:31 pm Mensagens: 6
|
 Re: Exercício
O pessoal é rápido meso hein. Ficou muito legal seu código Claudinei. Segue minha solução para a questão: Código: #!/usr/bin/python # -*- coding: utf-8 -*-
# by erlon.Cabral - erlon.cabral@gmail.com
print "Classificação de Alunos:\n"
total_aluno = int(raw_input("Quantos alunos para classificar?: ")) nome_aluno = [] notas = []
i = 1
while i <= total_aluno: nome_aluno.append(raw_input("Nome do %d° Aluno: " %i)) i += 1
print "\nDigitando a nota dos Alunos:"
i = 1
while i <= total_aluno: for y in range(4): notas.append(float(raw_input("Digite a %d° nota de %s: " \ %(y + 1, nome_aluno[i-1])))) print "" i += 1
print "Resultado final:"
i = 1 y = 0
while i <= total_aluno: # limpa para novo aluno media = 0 media_aluno = 0.0 notas_aluno = "" resultado = "Reprovado"
for y in range(4): media += notas[0] notas_aluno += " %.1f," % notas[0] # apos armazenar deleta nota del notas[0]
media_aluno = media / 4.0
if media_aluno > 6: resultado = "Aprovado"
print "O aluno %s tirou as %s foi %s com a média: %.1f" \ %(nome_aluno[i-1], notas_aluno, resultado, media_aluno)
i += 1 Gostei muito do exercício, bem bolado. rs
|
| Dom Jan 18, 2009 8:59 pm |
|
 |
|
ruy
Data de registro: Seg Jan 19, 2009 11:42 am Mensagens: 2
|
 Re: Exercício
#!/usr/bin/python # -*- coding: utf-8 -*- # Autor: Ruy Gomes nome=[] n1=[] n2=[] n3=[] n4=[]
quantidade=int(raw_input("Digite a quantidade de alunos: "))
for i in range(quantidade): nome.append(raw_input("Nome do aluno: "))
print "\n"
for i in range(quantidade): n1.append(float(raw_input("Digite a primeira nota do aluno %s: " %nome[i]))) n2.append(float(raw_input("Digite a segunda nota do aluno %s: " %nome[i]))) n3.append(float(raw_input("Digite a terceira nota do aluno %s: " %nome[i]))) n4.append(float(raw_input("Digite a quarta nota do aluno %s: " %nome[i]))) print "\n"
for i in range(quantidade): media=float((n1[i] + n2[i] + n3[i] + n4[i])/4) if (media>=6): print ("Aluno: %s - NOTA 1: %f, NOTA 2: %f, NOTA 3: %f, NOTA 4: %f - MÉDIA %f - APROVADO" %(nome[i], n1[i], n2[i], n3[i], n4[i], media)) else: print ("Aluno: %s - NOTA 1: %f, NOTA 2: %f, NOTA 3: %f, NOTA 4: %f - MÉDIA %f - REPROVADO" %(nome[i], n1[i], n2[i], n3[i], n4[i], media))
|
| Seg Jan 19, 2009 12:28 pm |
|
 |
|
infog
Site Admin
Data de registro: Sex Nov 21, 2008 11:45 pm Mensagens: 22 Localização: Cubatão - SP - Brasil
|
 Re: Exercício
Opa! Hoje vou colocar o meu também Código: #!/usr/bin/python # -*- coding: utf-8 -*- print("Sistema Escolar, Aulas de Python") nr_alunos = int(raw_input("Quantidade de Alunos: ")) alunos = [] i = 1 print("Digite o nome dos %i alunos" % nr_alunos) while i <= nr_alunos: alunos.append(raw_input("%iº aluno: " % i)) i += 1 print("Agora as notas dos alunos") i = 0 notas = [] while i < nr_alunos: j = 1 notas_tmp = [] while j <= 4: notas_tmp.append(float(raw_input("Digite a %i note de %s: " % (j, alunos[i])))) j += 1 notas.append(notas_tmp) i += 1 i = 0 while i < nr_alunos: media = (notas[i][0] + notas[i][1] + notas[i][2] + notas[i][3]) / 4 if media >= 6: resultado = "Aprovado" else: resultado = "Reprovado" print("%s - %f, %f, %f, %f - %f - %s" % (alunos[i], notas[i][0], notas[i][1], notas[i][2], notas[i][3], media, resultado)) i += 1 =) InFog
|
| Seg Jan 19, 2009 9:14 pm |
|
 |
|
Rodrigo Cesar
Data de registro: Ter Dez 16, 2008 11:15 pm Mensagens: 15
|
 Re: Exercício
ai vai o meu ... Código: # -*- coding: utf-8 -*- """ 1) Sala de aula: Faça um programa que pergunte o número de alunos em uma sala de aula, depois pergunte o nome de cada um, após isso ele deve pedir 4 notas de cada aluno e fazer a média entre elas, se a média for maior que 6 o aluno está aprovado, senão reprova. No fim deve ser exibida uma tabela assim:
Nome do aluno - nota1, nota2, nota3, nota4 - media - aprovado/reprovado
"""
def Media(*lista): # funcao que recebe uma lista e retorna a media e a situacao soma = 0 # mediante a media for val in lista: soma +=val
media = soma/4. if media>6: return media,"Aprovado" else : return media,"Reprovado"
cont=0 notas = [] #Lista que receberar a lista temporaria (equivale a todos alunos) num = int(raw_input(u"Número de alunos: "))
while cont<num:
temp = [] #Lista temporaria (equivale a apenas um aluno)
print ("\n\n\t\t\tAluno %d" %(cont+1)) temp.append(str(raw_input("\nNome: " ))) temp.append(float(raw_input("Primeira nota: "))) temp.append(float(raw_input("Segunda nota: "))) temp.append(float(raw_input("Terceira nota: "))) temp.append(float(raw_input("Quarta nota: "))) temp.append(Media(*temp[1:5])) #Passa o conteudo da lista nesse intervalo como argumento
notas.append(temp) # add temp a notas cont+=1
cont = 0
print ("Resultado".center(50)) print (u"\nNome\t\tNota_1\tNota_2\tNota_3\tNota_4\tMedia\tSituação\n")
while cont<len(notas): print ("%-10s\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f\t%s" %(notas[cont][0], notas[cont][1],notas[cont][2],notas[cont][3],notas[cont][4], notas[cont][5][0],notas[cont][5][1])) cont+=1
Rodrigo Cesar rodrigocliraATyahooDOTcomDOTbr
|
| Ter Jan 20, 2009 2:33 pm |
|
 |
|
rodrigozhou
Data de registro: Seg Nov 24, 2008 8:53 am Mensagens: 16 Localização: Rio de Janeiro
|
 Re: Exercício
Aqui está o meu: Código: # Curso de Python - Aula 10 # http://infog.casoft.info/?p=425 # -*- coding: iso8859 -*-
# Sala de aula: faça um programa que pergunte o número de alunos em uma sala de aula. # Depois, pergunte o nome de cada um. Após isso, ele deve pedir as 4 notas de cada aluno e fazer a média entre elas. # Se a média for maior que 6, o aluno está aprovado, senão, reprovado. # No fim deve ser exibida uma tabela assim: # Nome do aluno - nota1, nota2, nota3, nota4 - média - aprovado/reprovado print('Sala de Aula\n') alunos = [] notas = [] media = [] resultado = []
# Pergunta a quantidade de alunos quant_alunos = int(raw_input('Quantidade de alunos: ')) print('\n'),
x = 0 while x < quant_alunos: # Pergunta o nome do aluno nome = str(raw_input('Nome do(a) aluno(a): ')) alunos.append(nome)
# Pergunta as notas deste aluno y = 0 n = [] while y < 4: n.append(float(input('Nota %i de %s: ' %(y+1,nome)))) y += 1 notas.append(n)
# Calcula a média z = 0 m = 0 while z < 4: m+=n[z] z += 1 m/=4
# Arredonda a média em até 3 casas decimais, caso necessário m = list(str(m)) while len(m)<6: m.append('0') if int(m[-1])<5: m.pop(-1) else: m.pop(-1) m[-1] = str(int(media[-1])+1) m = float(''.join(m))
media.append(m)
# Verifica se o aluno foi aprovado ou não if m>=6: resultado.append('Aprovado') else: resultado.append('Reprovado')
print('\n'),
x += 1
# Imprime os alunos, notas, média e situação print('Relação dos Alunos') print('-'*84) print('|%s|%s|%s|%s|%s|%s|%s|' %('Nome do aluno'.center(25) , 'Nota 1'.center(8) , 'Nota 2'.center(8) , 'Nota 3'.center(8) , 'Nota 4'.center(8) , 'Média'.center(7) , 'Situação'.center(12))) print('-'*84)
i = 0 while i < quant_alunos: print('|%s|%s |%s |%s |%s | %s|%s|' %(alunos[i].ljust(25) , str(notas[i][0]).rjust(6) , str(notas[i][1]).rjust(6) , str(notas[i][2]).rjust(6) , str(notas[i][3]).rjust(6) , str(media[i]).ljust(6) , resultado[i].center(12))) i += 1 print('-'*84)
|
| Ter Jan 20, 2009 3:03 pm |
|
 |
|
bizachi
Data de registro: Seg Nov 24, 2008 3:32 pm Mensagens: 6
|
 Re: Exercício
Minha solução: Código: #!/usr/bin/env python # -*- coding: utf-8 -*- import os
os.system('clear')
qtdAlunos = int(raw_input("Quantos alunos estão matriculados na sala? ")) i = 1 nomeAlunos = [] nota1 = [] nota2 = [] nota3 = [] nota4 = [] media = [] estadoAlunos = [] while i <= qtdAlunos: nomeAlunos.append(raw_input("%io. Aluno: " % i)) i += 1 i = 0 while i < qtdAlunos: os.system('clear') print "Notas do aluno %s " % nomeAlunos[i] nota1.append(float(raw_input("Nota 1: "))) nota2.append(float(raw_input("Nota 2: "))) nota3.append(float(raw_input("Nota 3: "))) nota4.append(float(raw_input("Nota 4: "))) md = (nota1[i]+nota2[i]+nota3[i]+nota4[i])/4 media.append(md) if media[i] > 6: estadoAlunos.append("Aprovado") else: estadoAlunos.append("Reprovado") i += 1 os.system('clear') print("Relatório final da sala:") i = 0 while i < qtdAlunos: print "%s - %0.2f - %0.2f - %0.2f - %0.2f - %0.2f - %s" %(nomeAlunos[i],nota1[i],nota2[i],nota3[i],nota4[i],media[i],estadoAlunos[i]) i += 1
|
| Ter Jan 20, 2009 6:08 pm |
|
 |
|
erlon.cabral
Data de registro: Dom Dez 14, 2008 7:31 pm Mensagens: 6
|
 Re: Exercício
bizachi escreveu: Minha solução: Código: #!/usr/bin/env python # -*- coding: utf-8 -*- import os
os.system('clear')
qtdAlunos = int(raw_input("Quantos alunos estão matriculados na sala? ")) i = 1 nomeAlunos = [] nota1 = [] nota2 = [] nota3 = [] nota4 = [] media = [] estadoAlunos = [] while i <= qtdAlunos: nomeAlunos.append(raw_input("%io. Aluno: " % i)) i += 1 i = 0 while i < qtdAlunos: os.system('clear') print "Notas do aluno %s " % nomeAlunos[i] nota1.append(float(raw_input("Nota 1: "))) nota2.append(float(raw_input("Nota 2: "))) nota3.append(float(raw_input("Nota 3: "))) nota4.append(float(raw_input("Nota 4: "))) md = (nota1[i]+nota2[i]+nota3[i]+nota4[i])/4 media.append(md) if media[i] > 6: estadoAlunos.append("Aprovado") else: estadoAlunos.append("Reprovado") i += 1 os.system('clear') print("Relatório final da sala:") i = 0 while i < qtdAlunos: print "%s - %0.2f - %0.2f - %0.2f - %0.2f - %0.2f - %s" %(nomeAlunos[i],nota1[i],nota2[i],nota3[i],nota4[i],media[i],estadoAlunos[i]) i += 1
que for testar esse exemplo no Windows tem que trocar o os.system('clear') por os.system('cls'), "frecuraiada" de plataforma.rs abs
|
| Ter Jan 20, 2009 7:50 pm |
|
 |
|
manfazil
Data de registro: Seg Dez 15, 2008 5:57 pm Mensagens: 2
|
 Re: Exercício
Meus dois centavos... Código: # -*- coding: UTF-8 -*- nAlunos=int(raw_input("Qual o número de alunos da sala? "))
nomeAluno=[] nota=[[]] for n in range(1,nAlunos+1): nomeAluno.append(raw_input("Qual o nome do aluno %d? "%n)) for k in range(1,5): nota[n-1].append(int(raw_input("Qual a nota %d do aluno %d? "%(k,n)))) nota.append([])
for n in nomeAluno: media=sum(nota[nomeAluno.index(n)])/4. sit={True:'Aprovado',False:'Reprovado'} print n,'-',nota[nomeAluno.index(n)],'-',media,'-',sit[media>=6.]
|
| Qua Jan 21, 2009 3:23 pm |
|
 |
|
hahuho
Data de registro: Ter Dez 09, 2008 2:09 pm Mensagens: 11 ---------
|
 Re: Exercício
Só não consegui formatar a saida... Código: #!/usr/bin/env python # -*- coding: utf-8 -*- # Python 2.6
''' 1) Sala de aula: Faça um programa que pergunte o número de alunos em uma sala de aula, depois pergunte o nome de cada um, após isso ele deve pedir 4 notas de cada aluno e fazer a média entre elas, se a média for maior que 6 o aluno está aprovado, senão reprova. No fim deve ser exibida uma tabela assim: Nome do aluno - nota1, nota2, nota3, nota4 - media - aprovado/reprovado '''
print('\n\nVerificador de aprovações/reprovações dos alunos\n\n') n_alunos = int(raw_input('Quantos alunos possuem na sala de aula? ' )) nomes_alunos = [] nota1 = [] nota2 = [] nota3 = [] nota4 = [] media = [] apr_rep = [] cont = 0 print('\n\n') while cont < n_alunos: nomes_alunos.append(str(raw_input('Coloque o nome do(a) aluno(a) '))) nota1.append(float(raw_input('Coloque a 1a nota de %s ' % nomes_alunos[cont]))) nota2.append(float(raw_input('Coloque a 2a nota de %s ' % nomes_alunos[cont]))) nota3.append(float(raw_input('Coloque a 3a nota de %s ' % nomes_alunos[cont]))) nota4.append(float(raw_input('Coloque a 4a nota de %s ' % nomes_alunos[cont]))) media.append((nota1[cont] + nota2[cont] + nota3[cont] + nota4[cont])/4) if media[cont] >= 6. : apr_rep.append('aprovado(a)') else: apr_rep.append('reprovado(a)')
cont += 1 print('\n')
print ('Aluno(a)- Nota1, Nota2, Nota3, Nota4 - Media - aprovado(a)/reprovado(a)\n' )
for i in range(0, n_alunos): print ('%s - %.2f , %.2f , %.2f , %.2f - %.2f - %s' %(nomes_alunos[i], nota1[i], nota2[i], nota3[i], nota4[i], media[i], apr_rep[i]))
Obs.  é duro, testei várias vezes o programa e saiu uma coisa errada, no arquivo que mandei está " Vericador de aprovações/reprovações dos alunos" O certo é Verificador
|
| Sáb Jan 24, 2009 8:26 pm |
|
|
Quem está online |
Usuários vendo este fórum: Nenhum usuário registrado online e 0 visitantes |
|
Você não pode criar novos tópicos neste fórum Você não pode responder tópicos neste fórum Você não pode editar suas mensagens neste fórum Você não pode excluir suas mensagens neste fórum Você não pode enviar anexos neste fórum
|
|
 |