from functions.validação import lerFloat from functions.visual import formatDinheiro, tabela, arredondamento salarioini = lerFloat('Digite seu sálario: ', pos=True, erro='Digite um salário válido.') if salarioini <= 280: aumento = 0.2 elif salarioini <= 700: aumento = 0.15 elif salarioini <= 1500: aumento = 0.1 else: aumento = 0.05 salariofinal = salarioini + salarioini * aumento valores = { 'Salário inicial': formatDinheiro(salarioini), 'Aumento percentual': str(arredondamento(aumento * 100)) + '%', 'Aumento em dinheiro': formatDinheiro(salarioini * aumento), 'Salário final': formatDinheiro(salariofinal) } tabela(valores)
certas += 1 print(f'Sua nota: {certas:.1f}') alunos.append([f'Aluno {naluno}', certas]) while True: esc = input('Mais alguém a registrar? [S/N] ').strip().upper() if esc == 'S' or esc == 'N': break print('Selecione apenas "S" para sim e "N" para não') if esc == 'N': break maior = [0,0] menor = [0,0] for p in alunos: if p[0] == 'Aluno 1' or p[1] > maior[1]: maior = p if p[0] == 'Aluno 1' or p[1] < menor[1]: menor = p soma += p[1] media = arredondamento(soma / len(alunos)) dados = { 'Aluno com mais acertos': f'{maior[0]} com {maior[1]} {"acerto" if maior[1] == 1 else "acertos"}', 'Aluno com menos acertos': f'{menor[0]} com {menor[1]} {"acerto" if menor[1] == 1 else "acertos"}', 'Quantidade de alunso registrados': f'{naluno} {"aluno" if naluno == 1 else "alunos"}', 'Média de notas da turma': media } tabela(dados)
from functions.validação import lerInt from functions.visual import arredondamento, tabela from time import sleep nturmas = lerInt('Quantas turmas deseja analisar? ', pos=True, erro='Digite uma quantidade válida') if nturmas == 0: print('Encerrando...') sleep(1.2) exit() soma = 0 dados = {} for x in range(nturmas): while True: qtd = lerInt(f'Quantas alunos na turma {x + 1}? ', pos=True, erro='Digite uma quantidade válida') if qtd <= 40: break print('Não é possivel ter mais que 40 pessoas em uma turma') soma += qtd dados[f'Turma {x + 1}'] = f'{qtd} pessoas' media = arredondamento(soma / nturmas) dados['Média de alunos por turma'] = f'{media} pessoas' print('Analisando...') sleep(1.2) tabela(dados, tam=40)
from functions.validação import lerNota from functions.visual import tabela, arredondamento nota1 = lerNota('Nota 1: ') nota2 = lerNota('Nota 2: ') media = (nota1 + nota2) / 2 if media <= 4: conceito = 'E' elif media <= 6: conceito = 'D' elif media <= 7.5: conceito = 'C' elif media <= 9: conceito = 'B' else: conceito = 'A' dados = { 'Média': arredondamento(media), 'Conceito': conceito } tabela(dados, tam=10)
from functions.validação import lerInt, media from functions.visual import titulo, tabela, arredondamento from time import sleep titulo('Analisador de idades') qtd = lerInt('Quantas pessoas deseja registrar? ', pos=True, erro='Digite uma quantidade válida.') if qtd == 0: print('Encerrando...') sleep(1.2) exit() dados = {} idades = [] for x in range(qtd): idade = lerInt(f'Idade da {x + 1}° pessoa: ', pos=True, erro='Digite uma idade válida') idades.append(idade) dados[f'Idade da {x + 1}° pessoa'] = idade mediai = arredondamento(media(idades)) dados['Média de idades'] = mediai if mediai < 25: situacao = 'Jovem' elif mediai < 60: situacao = 'Adulta' else: situacao = 'Idosa' dados['Classificação da turma'] = situacao tabela(dados, tam=34)
if x == 0 or acidentes > maiorvei: maiorvei = acidentes if x == 0 or acidentes < menorvei: menorvei = acidentes if qtdvei < 2000: c += 1 somaaci += acidentes cidades.append([cod, acidentes]) for v in cidades: if v[1] == maiorvei: maioresaci.append(v[0]) if v[1] == menorvei: menoresaci.append(v[0]) mediavei = arredondamento(somavei / 5) mediaaci = arredondamento(somaaci / c) dados = { 'Maior índice de acidentes': maiorvei, 'Menor índice de acidentes': menorvei, 'Média de veículos nas 5 cidades': mediavei, 'Média de acidentes nas cidades com menos de 2000 veículos': mediaaci, 'Código(s) da(s) cidade(s) com maior número de acidentes': '; '.join(maioresaci), 'Código(s) da(s) cidade(s) com menor número de acidentes': '; '.join(menoresaci)
print('Digite um peso válido') if peso > maiorp or c == 1: maiorp = peso if peso < menorp or c == 1: menorp = peso pessoas[cod] = [altura, peso] alturas.append(altura) pesos.append(peso) if len(pessoas) == 0: print('Nenhuma pessoa registrada') print('Encerrando...') sleep(1.2) exit() mediaa = arredondamento(media(alturas)) mediap = arredondamento(media(pesos)) maioresa = [] menoresa = [] maioresp = [] menoresp = [] for k, v in pessoas.items(): if v[0] == maiora: maioresa.append(k) if v[0] == menora: menoresa.append(k) if v[1] == maiorp: maioresp.append(k) if v[1] == menorp: menoresp.append(k)
from functions.validação import lerFloat from functions.visual import arredondamento print('-=-=-= Equação de 2° grau =-=-=-') a = lerFloat('Digite o valor de "A" da equação: ') if a != 0: b = lerFloat('Digite o valor de "B" da equação: ') c = lerFloat('Digite o valor de "C" da equação: ') delta = b**2 - 4 * a * c if delta < 0: print('A equação não possui raízes.') elif delta == 0: res1 = -b / (2 * a) print('A equação só possui 1 raiz: ') print(f'x¹ = {arredondamento(res1)}') else: res1 = arredondamento((-b + delta**(1 / 2)) / (2 * a)) res2 = arredondamento((-b - delta**(1 / 2)) / (2 * a)) print(f"""As raízes da equação são: x¹ = {res1} x² = {res2}""") else: print('Se o valor de "A" for 0, não há uma equação de 2° grau.')
from functions.validação import lerFloat from functions.visual import arredondamento tamanho = lerFloat('Digite o tamanho do arquivo em MB: ', pos=True, erro='Digite um tamanho válido') velocidade = lerFloat( 'Digite a sua velocidade média de link com a internet em mbps: ', pos=True, erro='Digite uma velocidade válida') temposeg = tamanho / velocidade tempomin = arredondamento(temposeg / 60) print( f'O tempo de download, em minutos, é de aproximadamente {tempomin} minutos.' )
c = True print('Esse nome ja foi registrado') if c: continue for x in range(5): saltos.append(lerFloat(f'Distância do {x + 1}° Salto em metros: ')) saltos.sort() tabela( { 'Melhor salto': f'{saltos[4]}m', 'Pior salto': f'{saltos[0]}m', 'Média dos demais saltos': f'{arredondamento(sum(saltos[1:4]) / 3)}' }, tam=30) atletas.append([nome, arredondamento(sum(saltos[1:4]) / 3)]) if len(atletas) == 0: print('Nenhum atleta registrado.') print('Encerrando...') sleep(1.3) exit() print('Analisando...') sleep(1.5) print('-=' * 25) print('Médias') for a in atletas: print(f'{a[0]}: {a[1]}m') print('-=' * 25)
from functions.validação import lerNota, lerInt from functions.visual import titulo, arredondamento, tabela titulo('Calculo de média') qtd = lerInt('Quantas notas deseja analisar? ', pos=True, erro='Digite uma quantidade válida') if qtd == 0: print('Encerrando...') exit() dados = {} soma = c = 0 for x in range(qtd): nota = lerNota(f'{x + 1}° Nota: ') soma += nota c += 1 dados[f'Nota {x + 1}'] = nota dados['Média'] = arredondamento(soma / c) tabela(dados, tam=12)
from functions.validação import lerNota from functions.visual import arredondamento notas = [] for x in range(3): notas.append(lerNota(f'Nota {x + 1}: ')) media = arredondamento(sum(notas) / len(notas)) if media < 7: situacao = 'Reprovado(a)' elif media < 10: situacao = 'Aprovado(a)' else: situacao = 'Aprovado(a) com distinção' print('-=' * 15) print(f'Média: {media}') print(f'Situação: {situacao}') print('-=' * 15)
from functions.validação import lerFloat, lerInt from functions.visual import titulo, arredondamento titulo('Potência') base = lerFloat('Base: ') expoente = lerInt('Expoente: ') res = base if expoente == 0: res = 1 elif expoente > 0: for x in range(expoente - 1): res *= base else: pot = base for x in range(expoente - 1): pot *= base res = 1 / pot arredondamento(res) if expoente < 0: print('Resultado aproximado:', res) else: print('Resultado:', res)
from math import pi #Constante "pi" (3,1416...) from functions.validação import lerFloat from functions.visual import arredondamento radius = lerFloat('Raio: ') area = arredondamento(pi*radius**2) #Calcula a área de um círculo atravéz da formula "pi*r²" print(f'A área de um círculo com raio {radius} vale, aproximadamente, {area}')
from functions.visual import arredondamento meses = [['Janeiro'], ['Fevereiro'], ['Março'], ['Abril'], ['Maio'], ['Junho'], ['Julho'], ['Agosto'], ['Setembro'], ['Outubro'], ['Novembro'], ['Dezembro']] temps = [] for ind, mes in enumerate(meses): temp = lerFloat(f'Digite a temperatura do mes de {mes[0]} em °C: ') temps.append(temp) meses[ind].append(temp) tempMedia = media(temps) mesesAcimaDaMedia = [] for mesEtemp in meses: if mesEtemp[1] > tempMedia: mesesAcimaDaMedia.append(mesEtemp) print('-=' * 25) print('Temperatura média anual: {}{}°C\33[m'.format( "\33[1;34m" if tempMedia <= 25 else "\33[1;31m", arredondamento(tempMedia))) print(f'\nMeses com temperaturas acima da media:') for ind, mes in enumerate(mesesAcimaDaMedia): print(f'{ind + 1}- {mes[0]}({mes[1]}) ') print('-=' * 25)
from functions.validação import lerFloat from functions.visual import arredondamento opções = ['°F', '°C'] #Lista com siglas usadas na formatação da resposta print("""\33[1;32mSuas opções: [1] Celsius -> Farenheit [2] Farenheit -> Celsius\33[m""") while True: esc = input('\33[1;34mSua opção: \33[m' ) #Seleciona as opções [1] ou [2] com tratamento de erro if esc == '1' or esc == '2': break print('Selecione uma opção válida.') if esc == '1': valor = lerFloat('Quantos °C queres transformar pra Farenheit? ') res = arredondamento( 1.8 * valor + 32) #Formula para transformação de °C para °F (°C/5 = (°F-32)/9) else: valor = lerFloat('Quantos °F queres transformar pra Celsius? ') res = arredondamento( (valor - 32) / 1.8) #Formula para transformação de °F para °C (°C/5 = (°F-32)/9) print(f'{valor}{opções[int(esc)-2]} valem {res}{opções[int(esc)-1]}' ) #Valores numericos seguidos de indexações da lista "opções"
from functions.validação import lerFloat from functions.visual import arredondamento, tabela numeros = [] for x in range(5): numeros.append(lerFloat(f'{x + 1}° Número: ')) soma = sum(numeros) media = arredondamento(soma / len(numeros)) dados = {'Soma': arredondamento(soma), 'Média': media} tabela(dados)
from functions.validação import lerNota from functions.visual import arredondamento notas = [] #Lista onde será guardada as notas for nota in range(4): notas.append( lerNota(f'{nota + 1}° Nota: ')) #Adiciona uma nota a lista "notas" media = arredondamento( sum(notas) / len(notas) ) #tira a média das notas / se tiver muitas casas flutuantes, será arredondado print('~' * 23) notas.sort(reverse=True) #Arruma a lista "notas" em ordem decrescente for num, nota in enumerate(notas): print(f'{num+1}° Melhor nota: {nota}') #Ranking print(f'Média: {media}') print('~' * 23)
from functions.validação import lerNota from functions.visual import tabela, arredondamento, titulo from time import sleep titulo('Competição de ginástica') nome = input('Nome do atleta: ').strip() if nome == "": print('Nenhum atleta informado...') exit() notas = [] for x in range(7): notas.append(lerNota(f'Nota do {x + 1}° jurado: ')) notas.sort() maior = notas[len(notas) - 1] menor = notas[0] media = arredondamento(sum(notas[1:6]) / 5) print('Analisando...') sleep(1.1) dados = { 'Atleta': nome, 'Maior nota': maior, 'Menor nota': menor, 'Média de notas': media } tabela(dados)
from functions.validação import lerInt from functions.visual import arredondamento n = lerInt('Quantos termos deseja mostrar? ', pos=True, erro='Digite uma quantidade válida') if n == 0: print('Quantidade de termos nula') print('Programa encerrado...') exit() if n == 1: print('Soma = 1/1 = 1') exit() num = den = s = 1 print('Soma = 1/1 + ', end='') for x in range(n - 1): num += 1 den += 2 s += num / den if x == n - 2: print(f'{num}/{den} = ', end='') else: print(f'{num}/{den} + ', end='') s = arredondamento(s) print(s)
from functions.validação import lerFloat from functions.visual import formatDinheiro, arredondamento from math import ceil #Declaração de variáveis valores = {} peso = lerFloat('Peso em Kg: ') val = 0 #Variável apenas para validação na "operação ternária" if peso > 50: excesso = arredondamento(peso - 50) multa = formatDinheiro(ceil(excesso) * 4) val += 1 else: excesso = 'Dentro do regulamento' multa = 'Inexistente' valores['Peso'] = str(peso) + 'Kg' valores['Excesso'] = (f'{excesso}Kg' if val == 1 else excesso ) #"Operação ternária" valores['Multa'] = multa #Impressão da tabela print('-=' * 20) for k, v in valores.items(): print(f'{k}: {v}') print('-=' * 20)
from functions.validação import lerFloat, media from functions.visual import tabela, arredondamento while True: nome = input('Digite o nome do atleta: (Digite nenhum nome para parar) ') if len(nome) == 0: break distancias = [] for distancia in range(1, 6): distancias.append(lerFloat(f'Digite a {distancia} de {nome}: ', erro="Digite uma distância válida.", pos=True)) mediaDistancias = arredondamento(media(distancias)) print('\nResultado final:') tabela({ 'Atleta': nome, 'Saltos': ' - '.join(map(str, distancias)), 'Média': f'{mediaDistancias}m' }, alinhar=False, tam=45) print('\n\n') print('Obrigado por usar o meu programa :)')