22 - Elabore um programa que apresente os números pares de 1 a 100.
23 - Desenvolva um programaque leia 50 números inteiros, conte quantos são divisíveis por 3 e exiba o resultado.
24 - Desenvolva um programaque leia 40 números reais, somar e calcular a média dos números positivos e contar os números negativos e exiba os resultados.
25 - Desenvolva um programaque leia o nome e a idade de 20 pessoas, calcule e exiba a média das idades.
26 - Desenvolva um programaque leia o sexo (Masculino / Feminino) e o salário de 15 pessoas, calcule e exiba a média dos salários dos homens e das mulheres.
27 - Crie um programa que calcule a soma entre todos os números ímpares que são múltiplos de três e que se encontram no intervalo de 1 até 500.
28 - Desenvolva um programa que leia o primeiro termo e a razão de uma PA (Progressão Aritmética). No final, mostre os 10 primeiros termos dessa progressão.
29 - Um total de 500 alunos de uma universidade foram entrevistados. De cada um deles foram colhidas as seguintes informações: o código do curso que freqüenta (1-engenharia; 2-computação; 3-administração) e a idade. Desenvolva um programaque processe estes dados e que forneça as seguintes informações:
• número de alunos por curso;
• número de alunos com idade entre 20 e 25 anos, por curso; e
• qual o curso com menor média de idade.
30 - Foi feita uma pesquisa entre os habitantes de uma região. Foram coletados os dados de idade, sexo (M/F) e salário. Desenvolva um programa que informe:
a) a média de salário do grupo;
b) maior e menor idade do grupo;
c) quantidade de mulheres com salário até R$100,00.
Encerre a entrada de dados quando for digitada uma idade negativa.
31 - Num frigorífico existem 90 bois. Cada boi traz em seu pescoço um cartão contendo um número de identificação e seu peso. Escrever um algoritmo e o fluxograma em Pascal que leia o cartão e o peso dos 90 bois e ao final imprima o número e o peso do boi mais gordo e dos bois mais magro.
32 - Faça um programa que leia um número inteiro e diga se ele é ou não um número primo.
33 - Crie um programa que leia o ano de nascimento de sete pessoas. No final, mostre quantas pessoas ainda não atingiram a maioridade e quantos já são maiores de idade.
Soluções para a tarefa
Resposta:
#29 - Um total de 500 alunos de uma universidade foram entrevistados. De cada um deles foram colhidas as seguintes informações:
# o código do curso que freqüenta (1-engenharia; 2-computação; 3-administração) e a idade.
# Desenvolva um programa que processe estes dados e que forneça as seguintes informações:
#• número de alunos por curso;
#• número de alunos com idade entre 20 e 25 anos, por curso; e
#• qual o curso com menor média de idade.
from itertools import groupby
from random import choice, randint, uniform
class Aluno:
def __init__(self, curso, idade):
self.curso = curso
self.idade = idade
def estatisticas(alunos, cursos):
alunos_por_curso = [list(v) for l,v in groupby(sorted(alunos, key=lambda x:x.curso), lambda x: x.curso)]
menor_media = float('inf')
curso_menor_media = ""
for ac in alunos_por_curso:
qtd = len(ac)
nome_curso = cursos[ac[0].curso]
qtd_range_idade = len(list(filter(lambda y: y.idade >= 20 and y.idade <= 25, ac)))
media = sum(a.idade for a in ac)/len(ac)
menor_media = media if media < menor_media else menor_media
curso_menor_media = nome_curso if menor_media == media else curso_menor_media
print(f"Curso: {nome_curso}, Qtd. de alunos: {qtd}, Qtd. entre 20 e 25 anos : {qtd_range_idade}")
print(f"O curso com a menor média de idade é: {curso_menor_media}")
def test_29():
cursos = { 1: "engenharia", 2: "computação", 3: "administração"}
ids_cursos = list(cursos.keys())
alunos = []
for i in range(500):
alunos.append(Aluno(choice(ids_cursos), randint(18, 34)))
print(f"Total de alunos: {len(alunos)}")
Aluno.estatisticas(alunos,cursos)
#31 - Num frigorífico existem 90 bois. Cada boi traz em seu pescoço um cartão contendo um número de identificação e seu peso.
# Escrever um algoritmo e o fluxograma em Pascal que leia o cartão e o peso dos 90 bois e ao final
# imprima o número e o peso do boi mais gordo e dos bois mais magro.
class CartaoBoi:
def __init__(self, id, peso):
self.id = id
self.peso = peso
def estaticas_peso_boi(cartoes_boi):
menor_peso = float('inf')
maior_peso = float('-inf')
menor_cboi = {}
maior_cboi = {}
for cartao_boi in cartoes_boi:
menor_peso = cartao_boi.peso if cartao_boi.peso <= menor_peso else menor_peso
maior_peso = cartao_boi.peso if cartao_boi.peso >= maior_peso else maior_peso
menor_cboi = cartao_boi if cartao_boi.peso == menor_peso else menor_cboi
maior_cboi = cartao_boi if cartao_boi.peso == maior_peso else maior_cboi
print(f"O boi mais gordo é o {maior_cboi.id} e pesa {maior_cboi.peso}Kg. O boi mais magro é 0 {menor_cboi.id} e pesa {menor_cboi.peso}Kg.")
def test_30():
cartoes_boi = []
for i in range(90):
cartoes_boi.append(CartaoBoi(i, round(uniform(800.0, 1250.50),2)))
print(f"Total de bois: {len(cartoes_boi)}")
CartaoBoi.estaticas_peso_boi(cartoes_boi)
def main():
# inicio 29
test_29()
# inicio 31
test_30()
if __name__ == "__main__":
main()
Explicação:
rodar em um arquivo: exemplo.py