Aprenda Python

  • Página Inicial
  • Contato!
  • Tudo sobre Python Parte 1!
  • Tudo sobre Python Parte 2!
  • Tudo sobre Python Parte 3!
  • Tudo sobre Python Parte 4!
  • Tudo sobre Python Parte 5!
  • Tudo sobre Python Parte 6!
  • Tudo sobre Python Parte 7!
  • Exercícios - Parte 4

    Crie um programa que leia vários números inteiros pelo teclado, o programa vai parar quando o usuário digitar 999, que é a condição de parada, mas usando break. No final, mostre quantos números foram digitados e a soma entre eles, desconsiderando o flag:

    
    num = cont = soma = 0
    while True:
        num = int(input("Digite um número [999 para parar]: "))
        if num == 999:
            break
        soma += num
        cont += 1
    print("\nVocê digitou {} números e a soma entre eles foi {}.".format(cont, soma))
    
    

    Faça um programa que mostre a tabuada de vários números, um de cada vez, para cada valor digitado pelo usuário, o programa será interrompido ao solicitar um número negativo:

    
    while True:
        num = int(input("Digite um número para ver sua tabuada: "))
        if num < 0:
            break
        print("\nTabuada de {}:\n".format(num))
    
        print("-" * 12)
        for t in range(1, 10 + 1):
            print("{} x {:2} = {}".format(num, t, num * t))
        print("-" * 12)
    print("Fim do programa!")
    
    

    Faça um programa que jogue par ou ímpar com o computador. O jogo só será interrompido quando o jogador perder, mostrando o total de vitórias consecutivas que ele conquistou no final do jogo:

    
    from random import randint
    v = 0
    
    while True:
        jog = int(input("Digite um valor: "))
        comp = randint(0, 5)
        tot = jog + comp
        tipo = " "
    
        while tipo not in "PI":
            tipo = str(input("Par ou ímpar? [P/I]: ")).strip().upper()[0]
    
        print(f"\nVocê jogou {jog} e o computador jogou {comp}. Total de {tot}.")
        print("Deu par!" if tot % 2 == 0 else "Deu ímpar!")
    
        if tipo == "P":
            if tot % 2 == 0:
                print("Você venceu!")
                v += 1
            else:
                print("Você perdeu!")
                break
        elif tipo == "I":
            if tot % 2 == 1:
                print("Você venceu!")
                v += 1
            else:
                print("Você perdeu!")
                break
        print("\nVamos jogar novamente...\n")
    
    print(f"\nGAME OVER! Você venceu {v} vezes.")
    
    

    Crie um programa que leia a idade e o sexo de várias pessoas, a cada pessoa cadastrada, o programa deverá perguntar se o usuário quer ou não continuar, no final mostre quantas pessoas tem mais de 18 anos, quantos homens foram cadastrados e quantas mulheres tem menos de 20 anos:

    
    tot18 = totH = totM20 = 0
    
    while True:
        idade = int(input("Idade: "))
        sexo = " "
    
        while sexo not in "MF":
            sexo = str(input("Sexo: [M/F] ")).strip().upper()[0]
    
        if idade >= 18:
            tot18 += 1
    
        if sexo == "M":
            totH += 1
    
        if sexo == "F" and idade < 20:
            totM20 += 1
    
        resp = " "
    
        while resp not in "SN":
            resp = str(input("Quer Continuar? [S/N] ")).strip().upper()[0]
    
        if resp == "N":
            break
    
    print(f"\nTotal de pessoas com mais de 18 anos: {tot18}")
    print(f"Total de homens cadastrados: {totH}")
    print(f"Total de mulheres com menos de 20 anos: {totM20}")
    
    

    Crie um programa que leia o nome e o preço de vários produtos. O programa deverá perguntar se o usuário vai continuar. No final mostre o total gasto na compra, quantos produtos custam mais de 1000 Reais, e qual é o nome do produto mais barato:

    
    total = totmil = menor = cont = 0
    barato = ""
    
    while True:
        prod = str(input("Nome do produto: "))
        preco = float(input("Preço: R$"))
        cont += 1
        total += preco
    
        if preco > 1000:
            totmil += 1
    
        if cont == 1 or preco < menor:
            menor = preco
            barato = prod
    
        resp = " "
    
        while resp not in "SN":
            resp = str(input("Quer continuar? [S/N] ")).strip().upper()[0]
    
        if resp == "N":
            break
    
    print("{:-^40}\n".format("Estatísticas dos produtos"))
    print("O total da compra foi R${:.2f}.".format(total))
    print("Temos {} que custam mais de 1000 Reais.".format(totmil))
    print("O produto mais barato foi {}, que custa R${:.2f}.".format(barato, menor))
    
    

    Crie um programa que simule o funcionamento de um caixa eletrônico. No início, pergunte ao usuário qual será o valor sacado (inteiro) e o programa vai informar quantas cédulas de cada valor serão entregues.

    
    print("=" * 30)
    print("{:^30}".format("BANCO CEV"))
    print("=" * 30)
    
    valor = int(input("Que valor você quer sacar? R$"))
    
    total = valor
    
    ced = 100
    
    totCed = 0
    
    while True:
        if total >= ced:
            total -= ced
            totCed += 1
        else:
            if totCed > 0:
                print("Total de {} cédulas de R${}.".format(totCed, ced))
    
            # Outra condição:
    
            if ced == 100:
                ced = 50
            elif ced == 50:
                ced = 20
            elif ced == 20:
                ced = 10
            elif ced == 10:
                ced = 5
            elif ced == 5:
                ced = 2
            elif ced == 2:
                ced = 1
    
            totCed = 0
    
            # Outra condição:
    
            if total == 0:
                break
    
    print("=" * 30)
    print("{:^30}".format("Volte sempre ao Banco CEV!"))
    print("=" * 30)
    
    

    Crie um programa que tenha um tupla totalmnte preenchida com uma contagem por extenso, de zero até vinte, seu programa deverá ler um número pelo teclado (entre 0 e 20) e mostrá-lo por extenso:

    
    cont = ("zero", "um", "dois", "três", "quatro", "cinco",
               "seis", "sete", "oito", "nove", "dez", "onze",
               "doze", "treze", "catorze", "quinze", "dezesseis",
               "dezessete", "dezoito", "dezenove", "vinte")
    
    while True:
        num = int(input("Digite um número: "))
        if 0 <= num <= 20:
            break
        print("Tente Novamente!")
    
    print(f"O número {num} por extenso é {cont[num]}.")
    
    

    Crie uma tupla preenchida com os 20 colocadas da tabela do Brasileirão Série A, na ordem de colocação, depois mostre: Apenas os 5 primeiros colocados, os últimos 4 colocados, uma lista com os times em ordem alfabética e em que posição está o time "Chapecoense":

    
    times = ("Flamengo", "Fluminense", "Atlético-MG", "São Paulo", "Grêmio",
             "Corinthians", "Palmeiras", "Internacional", "Sport", "Cruzeiro",
             "América-MG", "Botafogo", "Vasco", "Vitória", "Bahia",
             "Santos", "Atlético-PR", "Chapecoense", "Ceará", "Paraná")
    
    print("Lista de Times:\n")
    
    for t in times:
        print(t)
    
    print("-=" * 15)
    
    print(f"Os primeiros são: {times[0:5]}")
    
    print("-=" * 15)
    
    print(f"Os últimos são: {times[-4:]}")
    
    print("-=" * 15)
    
    print(f"Times em Ordem Alfabética: {sorted(times)}")
    
    print("-=" * 15)
    
    print(f"O Chapecoense está na {times.index('Chapecoense') + 1}ª posição.")
    
    print("-=" * 15)
    
    

    Crie um programa que vai gerar cinco números aleatórios e colocar em uma tupla, depois disso mostre a listagens de números gerados e também indique o menor e o maior valor que estão na tupla:

    
    from random import randint
    
    num = (randint(1, 10), randint(1, 10), randint(1, 10), randint(1, 10), randint(1, 10))
    
    print("Os valores sorteados foram: ", end="")
    
    for n in num:
        print(f"{n} ", end="")
    
    print(f"\nO maior valor sorteado foi {max(num)}")
    print(f"E o menor valor sorteado foi {min(num)}")
    
    

    Desenvolva um programa que leia quatro valores pelo teclado e guarde-os em uma tupla. No final, mostre: Quantas vezes apareceu o valor 9, em que posição foi digitado o primeiro valor 3, e quais números foram pares:

    
    num = (int(input("Digite um número: ")),
           int(input("Digite outro número: ")),
           int(input("Digite mais um número: ")),
           int(input("Digite o último número: ")))
    
    print(f"\nVocê digitou os valores {num}.")
    print(f"O valor 9 apareceu {num.count(9)} vezes.")
    if 3 in num:
        print(f"O valor 3 apareceu na {num.index(3) + 1}ª posição.")
    else:
        print("O valor 3 não foi digitado.")
    print("O valores pares digitados foram: ", end="")
    for n in num:
        if n % 2 == 0:
            print(n, end=" ")
    
    

    Crie um programa que tenha uma tupla única com nomes de produtos e seus respectivos preços, na sequência. No final, mostre uma listagem de preços, organizando os dados em forma tabular:

    
    listagem = ("Lápis", 1.75,
                "Borracha", 2.00,
                "Caderno", 15.90,
                "Estojo", 25.00,
                "Transferidor", 4.20,
                "Compasso", 9.99,
                "Mochila", 120.32,
                "Canetas", 22.30,
                "Livro", 34.90)
    
    print("-" * 40)
    print(f"{'LISTAGEM DE PREÇOS':^40}")
    print("-" * 40)
    
    for pos in range(0, len(listagem)):
        if pos % 2 == 0:
            print(f"{listagem[pos]:.<30}", end="")
        else:
            print(f"R$ {listagem[pos]:>6.2f}")
    
    

    Crie um programa que tenha uma tupla com várias palavras. Depois isso, você deve mostrar, para cada palavra, quais são as suas vogais:

    
    palavras  = ("aprender", "programar", "linguagem", "python", "curso", "grátis", "estudar", "praticar", "trabalhar", "mercado", "programador", "futuro")
    
    for p in palavras:
        print(f"\nNa palavra {p.upper()} temos ", end="")
        for letra in p:
            if letra.lower() in "aáãâeéêiíoóõôuúûü": # Nesse exemplo, colocamos palavras acentuadas também na condição
                print(letra.upper(), end=" ")