示例#1
0
from functions.validação import lerFloat, lerInt
from functions.visual import titulo, arredondamento
from time import sleep

titulo('Analisador de dados')

num1 = lerFloat('Número 1: ')
num2 = lerFloat('Número 2: ')

print("""O que deseja fazer com esses números?
[1] Somar
[2] Subtrair
[3] Multiplicar
[4] Dividir""")

opcoes = [1, 2, 3, 4]
while True:
    opcao = lerInt('Sua opção: ', erro='Digite uma opção válida')
    if opcao in opcoes:
        break
    print('Digite uma opção válida')

if opcao == 1:
    res = num1 + num2
elif opcao == 2:
    res = num1 - num2
elif opcao == 3:
    res = num1 * num2
else:
    res = num1 / num2
示例#2
0
from functions.validação import lerInt
from functions.visual import titulo

titulo('Analisador de números primos')
print(
    'O programa irá analisar todos os números de 1 até N* e irá dizer quais desses números são primos.'
)
print('* N é um input digitado pelo usuário.')
n = lerInt('Digite um número inteiro para o valor de N: ')

nprimos = []
c = 0
if n > 0:
    for x in range(2, n + 1):
        primo = True
        for y in range(x - 1, 1, -1):
            c += 1
            if x % y == 0:
                primo = False
        if primo:
            nprimos.append(x)

else:
    for x in range(n, -1):
        primo = True
        for y in range(x + 1, -1):
            c += 1
            if x % y == 0:
                primo = False
        if primo:
            nprimos.append(x)
示例#3
0
from functions.visual import tabela, formatDinheiro, titulo
from functions.validação import lerFloat

titulo('Hipermercado Tabajara')

carnes = {'F': 'Filé duplo', 'A': 'Alcantra', 'P': 'Picanha'}
print("""Selecione uma opção de carne:
[F] Filé duplo
[A] Alcantra
[P] Picanha""")
while True:
    esc = input('Sua opção: ').upper().strip()[0]
    if esc in 'FAP':
        break
    print('Selecione uma opção válida')

while True:
    quantidade = lerFloat('Quantos Kg deseja comprar? ',
                          pos=True,
                          erro='Digite uma quantidade válida')
    if quantidade != 0:
        break
    print('A quantidade não pode ser 0Kg')

if esc == 'F':
    if quantidade > 5:
        precokg = 5.8
    else:
        precokg = 4.9
elif esc == 'A':
    if quantidade > 5:
示例#4
0
from functions.validação import lerFloat, lerInt, media
from functions.visual import tabela, titulo, arredondamento
from time import sleep

titulo('Senso altura e peso')

pessoas = {}
maiora = menora = maiorp = menorp = c = 0
alturas = []
pesos = []
while True:
    while True:
        cod = input('Digite seu código (Digite 0 para encerrar): ')
        try:
            v = int(cod)
        except:
            print('Digite um código válido.')
        else:
            if v >= 0:
                break
    if int(cod) == 0:
        break
    c += 1
    while True:
        altura = lerFloat('Digite sua altura em metros: ',
                          pos=True,
                          erro='Digite uma altura válida')
        if 0.5 < altura < 2.8:
            break
        print('Digite uma altura em metros válida')
    if altura > maiora or c == 1:
示例#5
0
from functions.validação import lerInt
from functions.visual import titulo

titulo('ELEIÇÕES')

qtd = lerInt('Quantas pessoas votarão? ', pos=True, erro='Digite uma quantidade válida.')
if qtd == 0:
    print('Eleições canceladas por falta de eleitores')
    exit()

candidatos = {'p': 0, 'c': 0, 'f': 0}
print('-='*10)
print("""Candidatos:
[C] Caique
[F] Fernando
[P] Pedro""")
print('-='*10)
for x in range(qtd):
    while True:
        try:
            esc = input(f'Candidato n° {x + 1}, selecione sua opção: ').strip().lower()[0]
        except:
            print('Selecione uma opção válida.')
        else:
            if esc in candidatos.keys():
                break
            print('Selecione uma opção válida.')
    candidatos[esc] += 1

pontuacoes = []
for v in candidatos.values():
示例#6
0
from functions.visual import tabela, titulo, arredondamento

titulo('Gabarito')

naluno = soma = 0
gabarito = ['A', 'B', 'C', 'D', 'E', 'E', 'D', 'C', 'B', 'A']
opc = ['A', 'B', 'C', 'D', 'E']
alunos = []
while True:
    naluno += 1
    resp = []
    for x in range(10):
        while True:
            res = input(f'Resposta da {x + 1}° questão: ').upper().strip()
            if res in opc:
                break
            print('Digite uma resposta válida')
        resp.append(res)
    certas = 0
    for i, r in enumerate(gabarito):
        if r == resp[i]:
            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
示例#7
0
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)
示例#8
0
from functions.visual import titulo
from functions.validação import lerInt

titulo('Tabuada')

while True:
    num = lerInt('Digite um número de 1 a 10: ')
    if 0 < num <= 10:
        break
    print('UM NÚMERO DE 1 A 10. Tente novamente...')

print('-='*12)
for x in range(10):
    print(f'{num} x {x + 1} = {(x+1)*num}')
print('-='*12)
示例#9
0
from functions.validação import lerFloat
from functions.visual import titulo, tabela, arredondamento
from time import sleep

titulo('Salto em distância')

atletas = []
while True:
    saltos = []
    c = False
    nome = input('Nome do atleta (deixa em branco para encerrar o programa): '
                 ).strip().upper()
    if nome == "":
        break
    else:
        for p in atletas:
            if p[0] == nome:
                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)}'
        },
示例#10
0
from functions.validação import lerFloat
from functions.visual import formatDinheiro, tabela, titulo
from time import sleep

titulo('Lojas Tabajara')

c = soma = 0
dados = {}
while True:
    c += 1
    p = lerFloat(f'Preço do {c}° produto (Digite 0 para encerrar): R$',
                 pos=True,
                 erro='Digite uma quantidade válida')
    if c == 1 and p == 0:
        print('Nenhum produto registrado, encerrando...')
        sleep(1.2)
        exit()
    if p == 0:
        break
    dados[f'Produto {c}'] = formatDinheiro(p)
    soma += p
dados['Total'] = formatDinheiro(soma)
print('Valor total: ' + dados['Total'])
while True:
    quantia = lerFloat('Quantia paga pelo cliente: R$',
                       pos=True,
                       erro='Digite uma quantia válida')
    if quantia > soma:
        dados['Dinheiro'] = formatDinheiro(quantia)
        break
    print('Quantia insuficiente.')
示例#11
0
        primo = False
    elif num > 0:
        for x in range(num - 1, 1, -1):
            if num % x == 0:
                primo = False
    else:
        for x in range(num + 1, -1):
            if num % x == 0:
                primo = False
    if primo:
        return True
    else:
        return False


titulo('Achador de números primos')

while True:
    num = lerInt('O programa vai achar todos os números primos entra 1 e N. Digite o valor de N: ')
    if num != 0:
        break
    print('O valor 0 é nulo... Tente outro')

if num > 0:
    print(f'Os valores primos entre 1 e {num} são: ', end='')
    for x in range(2, num):
        if verifPrimo(x):
            print(x, end=' ')
else:
    print(f'Os valores primos entre {num} e -1 são: ', end='')
    for x in range(-2, num, -1):
示例#12
0
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)
示例#13
0
from functions.visual import formatDinheiro, titulo

titulo('Lojas Quase Dois')

for x in range(50):
    print(f'{x + 1:.<20}{formatDinheiro((x + 1) * 1.99)}')
示例#14
0
from functions.validação import lerInt
from functions.visual import titulo

titulo('Verificador de números primos')

num = lerInt('Digite um número inteiro: ', erro='NÚMERO INTEIRO...')

if num == 0:
    print('0 é um valor núlo')
    exit()

primo = True
if num > 0:
    for x in range(2, num):
        if num % x == 0:
            primo = False
else:
    for x in range(-2, num, -1):
        if num % x == 0:
            primo = False

if primo == False or num == 1 or num == -1:
    print(f'O valor {num} NÃO é primo')
else:
    print(f'O valor {num} é primo')
示例#15
0
notas.reverse()
notasSenInv = notas[:]
notas.reverse()

print(f'Notas no sentido inverso em que foram informadas:', end="")
for nota in notasSenInv:
    print(nota, end="; ")
print('\n')

print(f'Soma das notas: {arredondamento(sum(notas))}\n')

print(f'Média das notas: {arredondamento(media(notas))}\n')

qtdNotasAcima = 0

for nota in notas:
    if nota > media(notas):
        qtdNotasAcima += 1

print(f'Quantidade de notas acima da media: {qtdNotasAcima}\n')

qtdNotasAbaixo7 = 0

for nota in notas:
    if nota < 7:
        qtdNotasAbaixo7 += 1

print(f'Quantidade de notas abaixo de 7: {qtdNotasAbaixo7}\n')

titulo('Programa encerrado')
示例#16
0
from functions.validação import lerSimNao
from functions.visual import titulo

titulo('Interrogatório')

counter = 0

for x in range(5):
    perguntas = [
        'Telefonou para a vítima? ', 'Esteve no local do crime? ',
        'Mora perto da vítima? ', 'Devia para a vítima? ',
        'Já trabalhou com a vítima? '
    ]

    if lerSimNao(perguntas[x]):
        counter += 1

if counter < 2:
    status = 'INOCENTE'
elif counter < 3:
    status = 'SUSPEITA'
elif counter < 5:
    status = 'CÚMPLICE'
else:
    status = 'ASSASSINO'

print(f'\nO interrogado foi classificado como "{status}"')
示例#17
0
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)
示例#18
0
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)
示例#19
0
from functions.visual import formatDinheiro, titulo

titulo('Panificadora Pão de Ontem')

for x in range(50):
    print(f'{x + 1:.<20}{formatDinheiro((x + 1) * 0.18)}')
示例#20
0
from functions.validação import lerInt
from functions.visual import titulo, arredondamento
from time import sleep

candidatos = [[1, 'Pedro', 0], [2, 'José', 0], [3, 'Fernando', 0],
              [4, 'Lucas', 0], [5, 'voto nulo', 0], [6, 'voto em branco', 0]]
qtdvotos = []
titulo('Eleições')
print("""Candidatos
[1] Pedro
[2] José
[3] Fernando
[4] Lucas
[5] Voto nulo
[6] Voto em branco""")
while True:
    while True:
        esc = lerInt('Sua opção: (digite "0" para encerrar a eleição) ',
                     erro='Selecione uma opção válida')
        if 0 <= esc <= 6:
            break
        print('Selecione uma opção válida')
    if esc == 0:
        break
    else:
        for c in candidatos:
            if c[0] == esc:
                c[2] += 1
        print('Dado registrado com sucesso')

soma = 0
示例#21
0
from functions.validação import lerInt
from functions.visual import titulo

titulo('Fatorial')
while True:
    while True:
        num = lerInt(
            'Deseja saber o fatorial de qual número? (máximo = 16 e mínimo = 0) '
        )
        if 0 <= num <= 16:
            break
        print('Digite uma opção válida.')

    if num == 0:
        print('0! = 1')
        exit()

    fat = 1
    print(f'{num}! = ', end='')
    for x in range(num, 0, -1):
        fat *= x
        if x != 1:
            print(x, end=' x ')
        else:
            print(f'{x} = {fat}')
    while True:
        esc = input('Deseja continuar? [S/N] ').lower().strip()[0]
        if esc in 'sn':
            break
        print('Selecione uma opção válida')
    if esc == 'n':
示例#22
0
from functions.validação import lerInt
from functions.visual import tabela, titulo

titulo('Analisador de pares e ímpares')

pares = []
impares = []
for x in range(10):
    num = lerInt(f'Número {x + 1}: ')
    if num not in impares and num not in pares:
        if num % 2 == 0:
            pares.append(num)
        else:
            impares.append(num)

pares.sort()
impares.sort()
txtpar = txtimpar = ''
for v in pares:
    txtpar += ' ' + str(v)
for v in impares:
    txtimpar += ' ' + str(v)
dados = {'Pares': txtpar, 'Ímpares': txtimpar}

tabela(dados)
示例#23
0
    valorBruto = lerFloat(f'Valor bruto arrecadado pelo {x + 1}° vendedor: R$',
                          erro="Digite um valor válido",
                          pos=True)

    salario = 200 + valorBruto * 0.09

    for ind, cont in enumerate(contadores):
        if ind != 8:
            if salario >= cont[0] and salario < contadores[ind + 1][0]:
                cont[1] += 1
                break
        else:
            cont[0] += 1

print('\n')
titulo('Registro de salário de vendedores')
print('\n')

for ind, cont in enumerate(contadores):
    if ind != 8:
        if cont[1] != 0:
            if cont[1] == 1:
                print(
                    f'Foi registrado {cont[1]} vendedor com salario entre {cont[2]}'
                )
            else:
                print(
                    f'Foram registrados {cont[1]} vendedores com salario entre {cont[2]}'
                )
    else:
        if cont[0] != 0:
示例#24
0
from functions.validação import lerFloat
from functions.visual import titulo, formatDinheiro

titulo('Posto de gasolina')

while True:
    litros = lerFloat('Quantos litros deseja colocar? ',
                      pos=True,
                      erro='Digite uma quantia válida')
    if litros != 0:
        break
    print('Digite algum valor')
print("""Selecione uma das opções:
[G] Gasolina
[A] Álcool""")
while True:
    esc = input('Sua opção: ').strip().lower()[0]
    if esc in 'ga':
        break
    print('Selecione uma opção válida')

gasolina = 2.5
alcool = 1.9
if esc == 'g':
    if litros <= 20:
        precolitro = gasolina * 0.96
    else:
        precolitro = gasolina * 0.94
else:
    if litros <= 20:
        precolitro = alcool * 0.97