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 5

    Faça um programa que leia 5 valores numéricos e guarde-os em uma lista, no final, mostre qual foi o maior e o menor valor digitado e suas respectivas posições na lista:

    
    listanum = []
    mai = 0
    men = 0
    
    for c in range(0, 5):
        listanum.append(int(input(f"Digite um valor para a posição {c}: ")))
        if c == 0:
            mai = men = listanum[c]
        else:
            if listanum[c] > mai:
                mai = listanum[c]
            elif listanum[c] < men:
                men = listanum[c]
    
    print("-=" * 30)
    print(f"Você digitou os valores {listanum}.")
    print(f"O maior valor digitado foi {mai} nas posições ", end="")
    for i, v in enumerate(listanum):
        if v == mai:
            print(f"{i}...", end="")
    print("")
    print(f"O menor valor digitado foi {men} nas posições ", end="")
    for i, v in enumerate(listanum):
        if v == men:
            print(f"{i}...", end="")
    print("")
    
    

    Crie um programa onde o usuário possa digitar vários valores numéricos e cadastre-os em uma lista. Caso o número já exista lá dentro, ele não será adicionado. No final, serão exibidos todos os valores únicos digitados, em ordem crescente:

    
    num = list()
    
    while True:
        n = int(input("Digite um valor: "))
        if n not in num:
            num.append(n)
            print(f"Valor \"{n}\" adicionado com sucesso!")
        else:
            print("Valor Duplicado! Não foi Adicionado!")
    
        r = str(input("Quer Continuar? [S/N] "))
        if r in "Nn":
            break
    
    print("-=" * 30)
    num.sort()
    print(f"Você Digitou os Valores {num}.")
    
    

    Crie um programa onde o usuário possa digitar cinco valores numéricos e cadastre-os em uma lista, já na posição correta de inserção (sem usar o sort()), no final, mostre a lista ordenada na tela:

    
    lista = []
    
    for c in range(0, 5):
        n = int(input("Digite um valor: "))
    
        if c == 0 or n > lista[-1]:
            lista.append(n)
            print("Adicionado ao final da lista!")
        else:
            pos = 0
            while pos < len(lista):
                if n <= lista[pos]:
                    lista.insert(pos, n)
                    print(f"Adicionado na posição {pos} da lista!")
                    break
                pos += 1
    
    print("-=" * 30)
    print(f"Os valor digitados em ordem foram {lista}")
    
    

    Crie um programa que vai ler vários números e colocar em uma lista, depois disso mostre: Quantos números foram digitados, a lista de valores ordenada de forma decrescente, se o valor 5 foi digitado e está ou não na lista:

    
    valores = []
    while True:
        valores.append(int(input("Digite um Valor: ")))
        resp = str(input("Quer Continuar? [S/N] "))
        if resp in "Nn":
            break
    print("-=" * 30)
    print(f"Você digitou {len(valores)} elementos.")
    valores.sort(reverse=True)
    print(f"Os valores em ordem decrescente são {valores}")
    if 5 in valores:
        print("O valor 5 faz parte da lista!")
    else:
        print("O valor 5 não foi encontrado na lista!")
    
    

    Crie um programa que vai ler vários números e colocar em uma lista, depois disso, crie duas listas extras que vão conter apenas os valores pares e os valores ímpares digitados, respectivamente, ao final, mostre o conteúdo das três listas geradas:

    
    num = list()
    pares = list()
    impares = list()
    
    while True:
        num.append(int(input("Digite um Número: ")))
        resp = str(input("Quer Continuar? [S/N]"))
        if resp in "Nn":
            break
    
    for i, v in enumerate(num):
        if v % 2 == 0:
            pares.append(v)
        else:
            impares.append(v)
    
    print("-=" * 30)
    print(f"A lista completa é {num}.")
    print(f"A lista de pares é {pares}.")
    print(f"A lista de ímpares é {impares}.")
    
    

    Crie um programa onde o usuário digite uma expressão qualquer que use parênteses, seu aplicativo deverá analisar se a expressão passada está com os parênteses abertos e fechados na ordem correta:

    
    expr = str(input("Digite a Expressão: "))
    pilha = []
    
    for simb in expr:
        if simb == "(":
            pilha.append("(")
        elif simb == ")":
            if len(pilha) > 0:
                pilha.pop()
            else:
                pilha.append(")")
                break
    
    if len(pilha) == 0:
        print("Sua Expressão está Válida!")
    else:
        print("Sua Expressão está Errada!")
    
    

    Faça um programa que leia nome e peso de várias pessoas, guardando tudo em uma lista. No final, mostre quantas pessoas foram cadastradas, uma listagem com as pessoais mais pesadas e uma com as mais leves:

    
    temp = []
    princ = []
    
    mai = men = 0
    
    while True:
        temp.append(str(input("Nome: ")))
        temp.append(float(input("Peso: ")))
    
        if len(princ) == 0:
            mai = men = temp[1]
        else:
            if temp[1] > mai:
                mai = temp[1]
    
            if temp[1] < men:
                men = temp[1]
    
        princ.append(temp[:])
        temp.clear()
        resp = str(input("Quer Continuar? [S/N] "))
    
        if resp in "Nn":
            break
    
    print("-=" * 30)
    print(f"Ao todo, você cadastrou {len(princ)} pessoas.")
    print(f"O maior peso foi de {mai}Kg. É o peso de ", end="")
    for p in princ:
        if p[1] == mai:
            print(f"{p[0]}.", end="")
    print("")
    print(f"O menor peso foi de {men}Kg. É o peso de ", end="")
    for p in princ:
        if p[1] == men:
            print(f"{p[0]}.", end="")
    print("")
    
    

    Crie um programa onde o usuário possa digitar sete valores numéricos e cadastre-os em uma lista única que mantenha separado os valores pares e ímpares. No final, mostre os valores pares e ímpares em ordem crescente:

    
    num = [[],[]]
    valor = 0
    
    for c in range(1, 8):
        valor = int(input(f"Digite o {c}º valor: "))
    
        if valor % 2 == 0:
            num[0].append(valor)
        else:
            num[1].append(valor)
    
    print("-=" * 30)
    num[0].sort()
    num[1].sort()
    print(f"Os valores pares digitados foram: {num[0]}")
    print(f"Os valores ímpares digitados foram: {num[1]}")
    
    

    Crie um programa que crie uma matriz de dimensão 3 x 3 e preencha com valores lidos pelo teclado. No final, mostre a matriz na tela, com a formatação correta:

    
    matriz = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
    
    for l in range(0, 3):
        for c in range(0, 3):
            matriz[l][c] = int(input(f"Digite um valor para [{l}, {c}]: "))
    
    print("-=" * 30)
    
    for l in range(0, 3):
        for c in range(0, 3):
            print(f"[{matriz[l][c]:^5}]", end="")
        print()
    
    

    Aprimore o exercício anterior, mostrando no final, a soma de todos os valores pares digitados, a soma dos valores da terceira coluna e o maior valor da segunda linha:

    
    matriz = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
    sPar = mai = sCol = 0
    
    for l in range(0, 3):
        for c in range(0, 3):
            matriz[l][c] = int(input(f"Digite um valor para [{l}, {c}]: "))
    
    print("-=" * 30)
    
    for l in range(0, 3):
        for c in range(0, 3):
            print(f"[{matriz[l][c]:^5}]", end="")
    
            if matriz[l][c] % 2 == 0:
                sPar += matriz[l][c]
        print()
    
    print("-=" * 30)
    
    print(f"A Soma dos Valores Pares é {sPar}.")
    
    for l in range(0, 3):
        sCol += matriz[l][2]
    
    print(f"A Soma dos Valores da Terceira Coluna é {sCol}.")
    
    for c in range(0, 3):
        if c == 0:
            mai = matriz[1][c]
        elif matriz[1][c] > mai:
            mai = matriz[1][c]
    
    print(f"O Maior Valor da Segunda Linha é {mai}.")
    
    

    Faça um programa que ajude um jogador da Mega-Sena a criar palpites. O programa vai perguntar quantos jogos serão gerados e vai sortear 6 números entre 1 e 60 para cada jogo, cadastrando tudo em uma lista composta:

    
    from random import randint
    from time import sleep
    
    lista = list()
    jogos = list()
    
    print("-" * 30)
    print(f"{'JOGA NA MEGA-SENA':=^30}")
    print("-" * 30)
    
    quant = int(input("Quantos Jogos você Quer que eu Sorteie? "))
    
    tot = 1
    
    while tot <= quant:
        cont = 0
    
        while True:
            num = randint(1, 60)
    
            if num not in lista:
                lista.append(num)
                cont += 1
    
            # Outra condição:
    
            if cont >= 6:
                break
    
        lista.sort()
        jogos.append(lista[:])
        lista.clear()
        tot += 1
    
    print("-=" * 3, f"SORTEANDO {quant} JOGOS", "=-" * 3)
    
    for i, l in enumerate(jogos):
        print(f"Jogo {i + 1}: {l}")
    
        sleep(1)
    
    print("-=" * 5, "BOA SORTE!", "=-" * 5)
    
    

    Crie um programa que leia nome e duas notas de vários alunos e guarde tudo em uma lista composta. No final, mostre um boletim contendo a média de cada um e permita que o usuário possa mostrar as notas de cada aluno individualmente:

    
    ficha = list()
    
    while True:
        nome = str(input("Nome: "))
        nota1 = float(input("Nota 1: "))
        nota2 = float(input("Nota 2: "))
    
        media = (nota1 + nota2) / 2
    
        ficha.append([nome, [nota1, nota2], media])
    
        resp = str(input("Quer continuar? [S/N] "))
    
        if resp in "Nn":
            break
    
    print("-=" * 30)
    print(f"{'Nº':<4}{'NOME':<12}{'MÉDIA':>8}")
    print("-" * 26)
    
    for i, a in enumerate(ficha):
        print(f"{i:<4}{a[0]:<10}{a[2]:>8.1f}")
    
    while True:
        print("-" * 35)
        opc = int(input("Mostrar notas de qual aluno? (Coloque o Nº, -1 interrompe): "))
    
        if opc <= -1:
            print("FINALIZANDO...")
            break
    
        if opc <= len(ficha) - 1:
            print(f"Notas de {ficha[opc][0]} são {ficha[opc][1]}.")
    
    print("<<< VOLTE SEMPRE >>>")