Buscar

ProvaAv2ParadigmaDeProgramacaoPython (2) (1)

Prévia do material em texto

INSTRUÇÕES 
 A prova é individual com duração de 100’; 		 Resposta apenas em caneta azul ou preta; 
 Não é permitido o uso de telefone celular – mantenha-o desligado; 		 É permitido o uso de calculadora, se necessário;
 Questões objetivas resposta válida apenas na própria questão; 		 RASURAS anulam sua questão objetiva;
 Questões discursivas apenas na folha de resposta da IES – devolva todas; 	 O uso de corretivo apenas nas questões discursivas;
 Qualquer ato ilícito penalizará sua prova BOA PROVA!
CURSO: ____________________________________________ 
PROFESSOR(A): Fernando Nazareno Nascimento Farias 
DISCIPLINA: Paradigmas de linguagens de programação em python
ALUNO(A): ___________________________________________________
TURMA: _________________ TURNO: Noturno 
DATA: __/___/2021
AV2
Nota da Prova: _______________
Nota Final: _______________
Assinatura Prof(ª).: ________________________ 
COMPOSIÇÃO DA AV2
TRABALHO DE PESQUISA (VALOR 5 PONTOS) + PROVA (VALOR 5 PONTOS)
QUESTÃO 1 (1 PONTO)
Considere uma lista em Python como lista = [1, 2, 4, -5, 7, -9]. Escreva um código que retorne apenas os elementos negativos da lista.numeros = [1,2,4,-5,7,-9]
print(numeros[-3])
print(numeros[-1])
QUESTÃO 2 (1 PONTO)
Em uma competição de salto em distância cada atleta tem direito a cinco saltos. O resultado do atleta será determinado pela média dos cinco valores restantes. Você deve fazer um programa que receba o nome e as cinco distâncias alcançadas pelo atleta em seus saltos e depois informe o nome, os saltos e a média dos saltos. O programa deve ser encerrado quando não for informado o nome do atleta. A saída do programa deve ser conforme o exemplo abaixo:
Atleta: Rodrigo Curvêllo
 
Primeiro Salto: 6.5 m
Segundo Salto: 6.1 m
Terceiro Salto: 6.2 m
Quarto Salto: 5.4 m
Quinto Salto: 5.3 m
Resultado final:
Atleta: Rodrigo Curvêllo
Saltos: 6.5 - 6.1 - 6.2 - 5.4 - 5.3
Média dos saltos: 5.9 m
atletas=[]
while True:
 nome=input(
 "digite o nome do atleta:"
 )
 if nome=="":
 
 break
 atleta={
 "nome":nome,
 "saltos":[],
 "media":0,
 "melhor_salto":0,
 "pior_salto":0,
 }
 
 for i in range(5):
 atleta.get("saltos").append(
 float(input(f"distancia do {i+1}ºsalto:"))
 )
 
 atleta.get("saltos").sort()
 atelta["pior_salto"]=atleta.get("saltos").pop(0)
 atleta["melhor_salto"]=atelta.get("saltos").pop()
 atleta["media"]=sum(atleta.get("saltos"))/3
 
 print(
 f"\nMelhor salto:{atleta.get('melhor_salto'):.1f}m"
 f"\nPior salto:{atleta.get('pior_salto'):.1f}m"
 f"\nMedia dos demais saltos:{atleta.geta('media'):.1f}m\n"
 
 
 )
 atletas.append(atleta)
 
print("\n\nResultado final:")
for atleta in atletas:
 
 print(f"{atleta.get('nome')}:{atleta.get('media'):.1f}m")
QUESTÃO 3 (1 PONTO)
Faça um programa que converta da notação de 24 horas para a notação de 12 horas. Por exemplo, o programa deve converter 14:25 em 2:25 P.M. A entrada é dada em dois inteiros. Deve haver pelo menos duas funções: uma para fazer a conversão e uma para a saída. Registre a informação A.M./P.M. como um valor ‘A’ para A.M. e ‘P’ para P.M. Assim, a função para efetuar as conversões terá um parâmetro formal para registrar se é A.M. ou P.M. Inclua um loop que permita que o usuário repita esse cálculo para novos valores de entrada todas as vezes que desejar.
def hora_ampm(horas,minutos):
 nova_hora=hora if hora <=12else hora-12
 
 A_ou_P="AM"if hora <12 else "PM"
 return str(nova_hora)+":"+str(minutos)+A_ou_P
 
while True:
 hora=int(input("Informe a hora:"))
 
 if hora ==0:
 
 break
 
 minutos = int(input("Informe os minutos:"))
 
 print(hora_ampm(hora,minutos))
QUESTÃO 4 (1 PONTO)
Desenvolva um programa que faça a tabuada de um número qualquer inteiro que será digitado pelo usuário, mas a tabuada não deve necessariamente iniciar em 1 e terminar em 10, o valor inicial e final devem ser informados também pelo usuário, conforme exemplo abaixo:
Montar a tabuada de: 5
Começar por: 4
Terminar em: 7
Vou montar a tabuada de 5 começando em 4 e terminando em 7:
5 X 4 = 20
5 X 5 = 25
5 X 6 = 30
5 X 7 = 35
num = int(input("montar a tabuada de:"))
comeco = int(input("Comecar por:"))
fim = int(input("Terminar em:"))
if comeco>fim:
 tmp = comeco
 comeco = fim
 fim = tmp
 
print("\nVou montar uma tabuada do %d comecando do %d e\nTerminando em %d\n"%(num,comeco,fim))
for x in range(comeco,fim+1):
 print("%d x %d = %d"%(num,x,num*x))
	
QUESTÃO 5 (1 PONTO)
Faça um programa para o cálculo de uma folha de pagamento, sabendo que os descontos são do Imposto de Renda, que depende do salário bruto (conforme tabela abaixo) e 3% para o Sindicato e que o FGTS corresponde a 11% do Salário Bruto, mas não é descontado (é a empresa que deposita). O Salário Líquido corresponde ao Salário Bruto menos os descontos. O programa deverá pedir ao usuário o valor da sua hora e a quantidade de horas trabalhadas no mês.
· Desconto do IR:
· Salário Bruto até 900 (inclusive) - isento
· Salário Bruto até 1500 (inclusive) - desconto de 5%
· Salário Bruto até 2500 (inclusive) - desconto de 10%
· Salário Bruto acima de 2500 - desconto de 20% Imprima na tela as informações, dispostas conforme o exemplo abaixo. No exemplo o valor da hora é 5 e a quantidade de hora é 220.
 Salário Bruto: (5 * 220) : R$ 1100,00
 (-) IR (5%) : R$ 55,00 
 (-) INSS ( 10%) : R$ 110,00
 FGTS (11%) : R$ 121,00
 Total de descontos : R$ 165,00
 Salário Liquido : R$ 935,00
valor_hora=float(input('Digite o valor da hora de trabalho:'))
quant_hora_trabalhada=float(input('Digite a quantidade de hora trabalhada no mes:'))
salario_bruto=(valor_hora*quant_hora_trabalhada)
def descontos(salario_bruto):
 desc_sindicato=(salario_bruto/100)*3
 fgts=(salario_bruto/100)*11
 ir=0
 
 if salario_bruto <=900:
 salario_liquido=salario_bruto-desc_sindicato

Continue navegando