Python - Guia prático para Iniciantes
  • Introdução
  • Você deveria aprender Python
  • Começando com Python
  • Desvios condicionais, fazendo seu programa tomar decisões
  • Valores None, Strings e Listas
  • Listas
  • Laços de Repetição - I
  • Laços de Repetição - II
  • Dicionários
  • Modularização de código com Funções
  • Expressões Lambda
  • Conclusão
  • Resolução dos exercícios
Powered by GitBook
On this page
  • Resolução dos exercícios
  • Capítulo 2 - Começando com Python
  • Capítulo 3 - Desvios condicionais, fazendo seu programa tomar decisões!
  • Capítulo 4 - Valores None, Strings e Introdução à Listas
  • Capítulo 5 - Operações com Listas
  • Capítulo 6 - Laços de Repetição - Parte 1
  • Capítulo 7 - Laços de Repetição - Parte 2
  • Capítulo 8 - Use Dicionários!
  • Capítulo 9 - Modularização de código com Funções!
  • Capítulo 10 - Funções Lambda

Was this helpful?

Resolução dos exercícios

Resolução dos exercícios

Capítulo 2 - Começando com Python

1. Faça um algoritmo que solicite o nome do usuário e depois escreva o nome da pessoa no console.

nome = input("Qual seu nome? ")
print(nome)

2. Faça um algoritmo que pergunte ao usuário quantos anos ele tem, depois disso, escreva True no console, caso ele já tenha alcançado a maioridade (18 anos), caso contrário escreva False.

idade = int( input("Quantos anos você tem? ") )
maioridade = idade >= 18
print(maioridade)

3. Faça um algoritmo que solicite um número ao usuário, depois disso, escreva True no console, caso o número tenha dois dígitos (Esteja entre 10 e 99), caso contrário escreva False.

numero = int( input("Digite um numero: ") )
dois_digitos = numero >= 10 and numero <= 99
print(dois_digitos)

Capítulo 3 - Desvios condicionais, fazendo seu programa tomar decisões!

1. Faça um algoritmo que solicite 3 notas para o usuário, calcule a média e indique se o aluno foi aprovado ou reprovado (nota precisar ser maior ou igual à sete para o aluno ser aprovado).

nota1 = float(input("Digite a primeira nota: "))
nota2 = float(input("Digite a segunda nota: "))
nota3 = float(input("Digite a terceira nota: "))
media = ( nota1 + nota2 + nota3 ) / 3

if media >= 7:
    print("Aprovado")
else:
    print("Reprovado")

2. Faça um algoritmo que solicite o ano que o usuário nasceu, depois disso, faça o programa descrever se o usuário fará ou já fez 18 anos neste ano.

ano_nascimento = int (input ("Digite o ano que você nasceu: "))
idade = 2018 - ano_nascimento

if idade == 18:
    print("O usuário fará ou vez 18 anos este ano.")

3. Faça um programa que solicite ao usuário sua idade, depois disso, exiba a classificação etária de acordo com as faixas de valores:

  • Criança para 0 até 11 anos;

  • Adolescente para 12 até 18 anos;

  • Jovem para 19 até 24 anos;

  • Adulto para 25 até 40 anos;

  • Meia Idade para 41 até 60 anos;

  • Idoso acima de 60 anos.

idade = int (input("Digite sua idade: "))

if idade >= 0 and idade <= 11:
    print("Criança")

elif idade >= 12 and idade <= 18:
    print("Adolescente")

elif idade >= 19 and idade <= 24:
    print("Jovem")

elif idade >= 25 and idade <= 40:
    print("Adulto")

elif idade >= 41 and idade <= 60:
    print("Meia Idade")

elif idade > 60:
    print("Idoso")

4. Faça um programa que solicite ao usuário 2 valores, utilize uma condição ternária para escrever qual o maior valor: o primeiro ou o segundo (caso os valores sejam iguais, considere o segundo).

primeiro_valor = int( input("Digite um valor: "))
segundo_valor = int( input("Digite um valor: "))
print( "Primeiro" if primeiro_valor > segundo_valor else "Segundo")

Capítulo 4 - Valores None, Strings e Introdução à Listas

1. Faça um programa que solicite o nome do usuário e depois disso faça uma saudação no formato: "Olá {nome digitado pelo usuário}".

nome = input("Digite seu nome: ")
print (f"Olá {nome}")

2. Faça um programa que solicite uma mensagem qualquer para o usuário e exiba esta mensagem com todas as letras em maiúsculo.

mensagem = input ("Digite uma mensagem: ")
print(mensagem.upper())

3. Faça um programa que solicite a idade do usuário, verifique se o texto informado só contém números. Caso contenha somente números exiba a mensagem: "Você tem {idade digitada} anos.", caso contrário exiba a mensagem: "Você digitou uma idade inválida".

if idade.isdigit():
    print(f"Você tem {idade} anos.")
else:
    print("Você digitou uma idade inválida")

4. Faça um programa que solicite o nome completo do usuário e exiba somente o seu segundo nome/primeiro sobrenome.

nome_completo = input("Digite seu nome completo: ")
nome_completo_dividido = nome_completo.split(" ")
print(nome_completo_dividido[1])

Capítulo 5 - Operações com Listas

1. Faça um programa que inicialize uma lista com o nome das pessoas da sua família.

familia = ["Gabriel", "Anderson", "Luluzinha", "Mariazinha", "Joãozinho"]
print(familia)

2. Faça um programa que inicialize uma lista vazia e solicite ao usuário 3 nomes de cidades, um por vez, cada vez que o usuário digitar um nome, o programa deve incluir este nome na lista de cidades.

cidades = []

cidade = input("Digite o nome da primeira cidade: ")
cidades.append(cidade)

cidades.append(input("Digite o nome da segunda cidade: "))
cidades.append(input("Digite o nome da terceira cidade: "))
print(cidades)

3. Faça um programa que inicialize uma lista com vários números diferentes, depois disso, solicite ao usuário um número, verifique se o número está ou não na lista e exiba uma mensagem notificando o usuário do resultado.

numeros = [1,3,6,10,5,23]
numero_digitado = int(input("Digite um número: "))
if numero_digitado in numeros:
    print(f"O número {numero_digitado} está na lista")
else:
    print(f"O número {numero_digitado} não está na lista")

4. Faça um programa que inicialize uma lista vazia e a preencha com 5 nomes diferentes digitados pelo usuário, depois disso solicite um número de 0 até 4 e remova o elemento desta posição.

nomes = []
nomes.append(input("Digite o primeiro nome: "))
nomes.append(input("Digite o segundo nome: "))
nomes.append(input("Digite o terceiro nome: "))
nomes.append(input("Digite o quarto nome: "))
nomes.append(input("Digite o quinto nome: "))

posicao_para_excluir = int( input("Escolha uma posição de 0(zero) até quatro para excluir da lista: "))
del nomes[posicao_para_excluir]
print(nomes)

Capítulo 6 - Laços de Repetição - Parte 1

1. Faça um programa que inicialize uma lista de compras com 5 itens diferentes e exiba todos utilizando um laço de repetição.

itens_compra = ["Arroz", "Leite", "Ovos", "Feijão", "Tomate"]
for item in itens_compra:
    print(item)

2. Faça um programa que inicialize que crie uma lista com os valores de 1 até 10 e depois exiba apenas os números pares.

for numero in range(1,11):
    if numero % 2 == 0:
        print(numero)

3. Faça um programa que exiba todos os valores ímpares entre 50 e 100 utilizando o range.

for numero in range(51,101,2):
    print(numero)

4. Faça um programa que inicialize uma lista vazia, solicite ao usuário 10 números diferentes, um por vez. Caso o número digitado seja par, acrescente um ao seu valor. Depois disso, exiba os 10 números digitados.

numeros = []
for numero in range(10):
    item_digitado = int ( input("Digite um valor: ") )
    if(item_digitado % 2 ==0):
        item_digitado += 1
    numeros.append(item_digitado)

for numero in numeros:
    print(numero)

5. Faça um programa que exiba as tabuadas de 1 até 10 no formato: "2 x 3 = 6", (utilize dois comandos for)

for operador in range(1,11):
    for operador_2 in range(1,11):
        resultado = operador * operador_2
        print(f"{operador} X {operador_2} = {resultado}")

Capítulo 7 - Laços de Repetição - Parte 2

1. Faça um programa que inicialize uma lista de compras com 5 itens diferentes e exiba todos utilizando um laço de repetição while.

itens_compra = ["Arroz", "Leite", "Ovos", "Feijão", "Tomate"]
posicao = 0
while posicao < len(itens_compra):
    print(itens_compra[posicao])
    posicao+=1

2. Faça um programa que inicialize uma lista com os valores de 1 até 10 e depois exiba apenas os números pares utilizando while.

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
posicao = 0
while posicao < len(numeros):
    numero = numeros[posicao]
    if numero % 2 == 0:
        print(numero)
    posicao+=1

3. Faça um programa que inicialize uma lista vazia, solicite ao usuário 10 números ímpares diferentes, um por vez. Caso o número digitado seja par, solicite novamente um número, até que o valor seja um número ímpar. Depois disso, exiba os 10 números digitados.

numeros = []
numero = 0
quantidade_sobrando = 10
while quantidade_sobrando > 0:
    numero = 0
    while numero % 2 == 0:
        numero = int( input("Digite um número ímpar: ") )

    numeros.append(numero)
    quantidade_sobrando -= 1

posicao = 0

while posicao < len(numeros):
    print(numeros[posicao])
    posicao += 1

4. Faça um programa que exiba um menu para o usuário selecionar uma das três opções:

  • 1 - Olá mundo

  • 2 - Eu programo em Python

  • 3 - Laços de repetição

O programa deve solicitar ao usuário uma das 3 opções, caso o usuário digite um valor diferente das opções (1, 2 ou 3), o programa deve apresentar novamente o menu de opções até que uma delas seja escolhida. Por fim, o programa deve exibir uma mensagem diferente para cada opção.

opcao = 0
opcoes = [1, 2, 3]
while opcao not in opcoes:
    print("Selecione uma das opções abaixo: ")
    print("1 - Olá mundo ")
    print("2 - Eu programo em Python ")
    print("3 - Laços de repetição ")
    opcao = int ( input ("Selecione a opção: ") )

if opcao == 1:
    print("Olá mundo!")
elif opcao == 2:
    print("Já estou na minha sexta lição de Python!")
else:
    print("Nesta lição estou estudando o laço de repetição While")

5. Remove a instrução break e a instrução continue do laço de repetição abaixo:

numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
posicao = 0
while posicao < len(numeros):
    posicao += 1
    if posicao == 3:
        continue
    elif posicao == 6:
        break
    print(numeros[posicao-1])
numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
posicao = 0
while posicao < 5:
    if posicao != 2:
        print(numeros[posicao])
    posicao += 1

Capítulo 8 - Use Dicionários!

1. Faça um programa que crie um dicionário para definir um produto, contendo sua descrição e seu preço.

produto = {
    "descrição": "Água",
    "preço": 2.00
}

2. Faça um programa que inicialize uma lista de compras com 5 itens diferentes, onde cada item é um dicionário contendo a descrição e preço do produto. Depois disso, percorra a lista e exiba as informações de cada item.

lista_compras = [
    {"descrição": "Água", "preço": 2.00},
    {"descrição": "Leite", "preço": 3.00},
    {"descrição": "Carne", "preço": 18.00},
    {"descrição": "Pizza", "preço": 9.00},
    {"descrição": "Chocolate", "preço": 6.50},
]

for item_compra in lista_compras:
    print("Produto:", item_compra["descrição"], "por", str(item_compra["preço"]), "reais.")

3. Utilize a lista de compras do programa anterior para identificar qual o produto mais barato e qual o produto mais caro da lista de compras.

mais_barato = None
mais_caro = None
indice = 0
while indice < len(lista_compras):
    item_compra = lista_compras[indice]
    if indice == 0:
        mais_caro = item_compra
        mais_barato = item_compra
    else:
        if item_compra["preço"] > mais_caro["preço"]:
            mais_caro = item_compra

        if item_compra["preço"] < mais_barato["preço"]:
            mais_barato = item_compra

    indice = indice + 1

print("Produto mais caro: ", mais_caro["descrição"], "por", mais_caro["preço"],"reais")
print("Produto mais barato: ", mais_barato["descrição"], "por", mais_barato["preço"],"reais")

4. Faça um programa que tenha uma lista com 5 de pessoas, onde cada pessoa tem seu nome e sobrenome armazenado em um dicionário, depois disso, exiba todos os nomes e sobrenomes. Para complicar um pouco as coisas, vamos simular que estes dados foram obtidos da web e com isso recebemos algumas inconsistências. Duas das cinco pessoas possuem o dicionário onde as chaves estão em maiúsculo e os outros três em minúsculo.

pessoas = [
    {"nome": "Joãozinho", "sobrenome": "da Silva" },
    {"NOME": "Mariazinha", "SOBRENOME": "de Souza" }, 
    {"nome": "Gabriel", "sobrenome": "Schade" },
    {"NOME": "Joana", "SOBRENOME": "da Silva" },
    {"nome": "Everton", "sobrenome": "Schmit" },
]

for pessoa in pessoas:
    nome = pessoa.get("nome", None)
    sobrenome = pessoa.get("sobrenome", None)
    if not nome:
        nome = pessoa.get("NOME", None)
    if not sobrenome:
        sobrenome = pessoa.get("SOBRENOME", None)

    print(nome, sobrenome)

Capítulo 9 - Modularização de código com Funções!

1. Faça um programa que escreva "Minha primeira função", esta escrita deve ser realizada a partir da chamada de uma função.

def minha_funcao():
    print("Minha primeira função")

minha_funcao()

2. Faça um programa que solicite o nome do usuário e a idade do usuário, depois disso exiba a mensagem: "{nome} possui {idade} anos.". Esta mensagem deve ser escrita em uma função.

def escrever_nome_idade(nome, idade):
    print(nome, "possui",idade,"anos.")

nome_digitado = str(input("Digite seu nome: "))
idade_digitada = int(input("Digite sua idade: "))

escrever_nome_idade(nome_digitado, idade_digitada)

3. Faça um programa que solicite dois números ao usuário e exiba a multiplicação deles. A multiplicação deve ser calculada em uma função.

def multiplicar(numero1, numero2):
    return numero1 * numero2

numero = int(input("Digite o primeiro número: "))
numero2 = int(input("Digite o segundo número: "))
resultado = multiplicar(numero, numero2)
print(resultado)

4. Faça um programa que solicite ao usuário três números diferentes e exiba o dobro do maior número. Para fazer isso separe seu código em duas funções diferentes: Uma função para retornar o maior dos três números e outra função para dobrar o número.

def obter_maior(numero, numero2, numero3):
    maior = None
    if numero > numero2 and numero > numero3:
        maior = numero
    elif numero2 > numero and numero2 > numero3:
        maior = numero2
    else:
        maior = numero3
    return maior


def dobrar(numero):
    return numero * 2

numero = int(input("Digite o primeiro número: "))
numero2 = int(input("Digite o segundo número: "))
numero3 = int(input("Digite o terceiro número: "))

maior = obter_maior(numero,numero2,numero3)
print(dobrar(maior))

5. Faça um programa que inicialize uma lista vazia, depois disso solicite 5 nomes diferentes ao usuário (utilize laço de repetição). Cada nome digitado deve ser adicionado à lista e por fim, todos os nomes devem ser escritos no console. Utilize uma função para solicitar e retornar o nome digitado, uma função para adicionar o nome à lista (passando o nome e a lista por parâmetro) e outra função para escrever todos os nomes no console.

def solicitar_nome():
    return str ( input("Digite um nome: ") )

def adicionar_nome_na_lista(lista, nome):
    lista.append(nome)

def escrever_nomes(lista):
    for nome in lista:
        print(nome)

nomes = []
for contador in range(0,5):
    nome = solicitar_nome()
    adicionar_nome_na_lista(nomes, nome)

escrever_nomes(nomes)

Capítulo 10 - Funções Lambda

1. Faça um programa que escreva "Minha primeira função", esta escrita deve ser realizada a partir da chamada de uma função que foi declarada como uma expressão lambda.

minha_funcao = lambda:print("Minha primeira função")
minha_funcao()

2. Faça um programa que solicite o nome do usuário e a idade do usuário, depois disso exiba a mensagem: "{nome} possui {idade} anos.". Esta mensagem deve ser escrita em uma função lambda.

escrever_nome_idade = lambda nome, idade: print(nome, "possui",idade,"anos.")
nome_digitado = str(input("Digite seu nome: "))
idade_digitada = int(input("Digite sua idade: "))
escrever_nome_idade(nome_digitado, idade_digitada)

3. Faça um programa que solicite dois números ao usuário e exiba a multiplicação deles. A multiplicação deve ser calculada em uma função lambda.

multiplicar = lambda numero1, numero2: numero1 * numero2

numero = int(input("Digite o primeiro número: "))
numero2 = int(input("Digite o segundo número: "))
resultado = multiplicar(numero, numero2)
print(resultado)

4. Faça um programa que solicite cinco números ao usuário, depois disso, exiba apenas os números maiores do que 10. Utilize a função filter para fazer isso.

numeros = []
for indice in range(1,5):
    numero = int(input("Digite um número: "))
    numeros.append(numero)

maiores = filter(lambda numero: numero > 10, numeros)
for maior in maiores:
    print(maior)

5. Faça um programa que solicite dez números ao usuário, depois disso, exiba todos números pares e só então exiba todos os números ímpares. Utilize a função filter para fazer isso.

def escrever_array(array):
    for valor in array:
        print(valor)

numeros = []
for indice in range(1,10):
    numero = int(input("Digite um número: "))
    numeros.append(numero)

pares = filter(lambda numero: numero % 2 == 0, numeros)
impares = filter(lambda numero: numero % 2 == 1, numeros)
escrever_array(pares)
escrever_array(impares)
PreviousConclusão

Last updated 5 years ago

Was this helpful?