Lista 01 - Revisão de Python
Lista 01 - Revisão de Python
Seção intitulada “Lista 01 - Revisão de Python”Lista de exercícios para revisar a linguagem de programação Python. Resolva cada exercício de forma progressiva, cobrindo desde a declaração de variáveis e leitura de dados até estruturas de decisão, repetição, vetores e funções.
Exercício 01: Cadastro do Jogador
Seção intitulada “Exercício 01: Cadastro do Jogador”Competência: Leitura de dados com input() e exibição com print().
Contexto:
Em um programa de gestão esportiva, sua tarefa é exibir uma descrição de um jogador de futebol baseado nas suas características. Você deverá criar um programa que recebe as características de um jogador e no final imprima na tela uma descrição (vide exemplo).
Instruções:
- Declare as variáveis
nome,idade,posicaoealtura, lendo cada uma delas cominput(). - Converta
idadeealturapara os tipos numéricos adequados.
Entradas:
- Nome (string)
- Idade (inteiro)
- Posição (string)
- Altura (float)
Saída esperada:
- Uma frase descrevendo o jogador com todas as informações lidas.
Exemplo:
Entrada
João23Atacante1.82Saída
Jogador João, 23 anos, atua como Atacante e tem 1.82m de altura.Exercício 02: Calculadora de Fórmula
Seção intitulada “Exercício 02: Calculadora de Fórmula”Competência: Declaração de variáveis, operadores aritméticos e print().
Contexto:
Em um laboratório de pesquisa, os cientistas precisam comparar duas medições experimentais de forma rápida. Para isso, eles pedem um programa que receba os dois valores e calcule automaticamente os resultados das operações matemáticas básicas entre eles.
Instruções:
- Leia dois números decimais e armazene-os nas variáveis
aeb. - Calcule e imprima cada operação em uma linha separada.
Entradas:
- Número A (float)
- Número B (float)
Saída esperada:
- Cinco linhas, uma para cada operação, no formato
operação: valor.
Exemplo:
Entrada
83Saída
Soma: 11.0Subtração: 5.0Multiplicação: 24.0Divisão: 2.6666666666666665Exponenciação: 512.0Exercício 03: Par ou Ímpar
Seção intitulada “Exercício 03: Par ou Ímpar”Competência: Funções com retorno e parâmetro, operadores aritméticos (módulo), estruturas de decisão if/else e input().
Contexto:
Em uma organização de campeonato de futebol amador, os times são divididos em duas chaves para o sorteio dos confrontos. Para distribuir os times de forma justa, o sistema precisa classificar o número do sorteio de cada time como par ou ímpar.
Instruções:
- Crie a função
eh_par(numero)que recebe um número como parâmetro e retornaTruese for par ouFalsese for ímpar, usando o operador de módulo%. - No programa principal, leia um número inteiro, chame a função e imprima
parouímparconforme o retorno.
Entradas:
- Número inteiro
Saída esperada:
- A mensagem
parouímpar.
Exemplo:
Entrada
7Saída
ímparExercício 04: Classificação Etária
Seção intitulada “Exercício 04: Classificação Etária”Competência: Funções com retorno e sem parâmetro, estruturas de decisão if/elif/else e input().
Contexto:
Uma academia de musculação recebe alunos de todas as idades e precisa organizá-los em turmas específicas. Para direcionar cada novo aluno à turma correta, o sistema de matrícula deve classificar o aluno em uma faixa etária, e você é o responsável por implementar essa regra.
Instruções:
- Crie a função
classificar()— sem parâmetros — que lê a idade internamente cominput()e retorna a categoria correspondente, usandoif,elifeelse:Criançapara idade entre 0 e 12;Adolescentepara idade entre 13 e 17;Adultopara idade entre 18 e 59;Idosopara idade 60 ou mais.
- No programa principal, chame a função e imprima a categoria retornada.
Enunciado:
Crie um programa com a função classificar() (com retorno e sem parâmetro) que lê a idade e retorna a categoria. O programa principal deve chamar a função e imprimir o valor retornado:
Entradas:
- Idade (inteiro)
Saída esperada:
- Uma das quatro categorias conforme a faixa etária.
Exemplo:
Entrada
15Saída
AdolescenteExercício 05: Menu de Operações
Seção intitulada “Exercício 05: Menu de Operações”Competência: Funções sem retorno e com parâmetro, estrutura de decisão match e operadores aritméticos.
Contexto:
Uma loja de conveniência está implantando um caixa eletrônico que precisa realizar cálculos rápidos no atendimento. O funcionário digita dois valores e escolhe em um menu qual operação deve ser executada. O programa é responsável por executar a operação escolhida e exibir o resultado.
Instruções:
- Crie a função
calcular(a, b, op)(sem retorno) que recebe os dois números e o código da operação, usamatchpara executar a operação e imprime o resultado. - Para códigos diferentes de
1a4, a função deve imprimiropção inválida. - No programa principal, leia os dois números e o código e chame a função.
- Na divisão, se o segundo número for zero, a função deve imprimir
Erro: Divisão por zero..
Entradas:
- Número A (float)
- Número B (float)
- Código da operação (inteiro)
Saída esperada:
- O resultado da operação escolhida ou a mensagem de opção inválida.
Exemplo:
Entrada
1024Saída
5.0Exercício 06: Contagem Regressiva
Seção intitulada “Exercício 06: Contagem Regressiva”Competência: Funções sem retorno e com parâmetro, estruturas de repetição for e range().
Contexto:
Em uma missão espacial, a equipe de controle precisa fazer uma contagem regressiva antes do lançamento do foguete. O técnico informa o número inicial e o sistema deve exibir todos os números até o zero, seguidos de uma explosão simulada.
Instruções:
- Crie a função
contagem(n)(sem retorno) que recebe o número inicial e usa um laçoforcomrange()para imprimir os números em ordem decrescente até0, terminando comBUM!. - No programa principal, leia um número inteiro positivo e chame a função.
Entradas:
- Número N (inteiro)
Saída esperada:
- Os números de N a 0, um por linha, seguidos de
BUM!.
Exemplo:
Entrada
3Saída
3210BUM!Exercício 07: Adivinhando o Número
Seção intitulada “Exercício 07: Adivinhando o Número”Competência: Funções sem retorno e sem parâmetro, estruturas de repetição while, operadores de comparação e input().
Contexto:
Em uma feira de ciências, os organizadores montaram um jogo de adivinhação em que o participante deve descobrir um número secreto. O jogo continua pedindo novos chutes enquanto o participante não acertar, e ele pode desistir a qualquer momento digitando zero.
Instruções:
- Crie a função
jogar()(sem parâmetros e sem retorno) que contém todo o jogo: define a variávelnumero_sorteadocom o valor fixo8, usa um laçowhilepara ler os chutes e imprime as mensagens de resultado. - No programa principal, apenas chame a função
jogar().
Entradas:
- Múltiplos chutes (inteiros) até acertar o número secreto ou digitar
0.
Saída esperada:
- A mensagem
Parabéns! Você acertou.caso acerte, ouVocê desistiu.caso digite0.
Exemplo:
Entrada
478Saída
Parabéns! Você acertou.Exercício 08: Soma dos Elementos de um Vetor
Seção intitulada “Exercício 08: Soma dos Elementos de um Vetor”Competência: Funções com retorno e parâmetro, vetores (listas), operadores aritméticos e estrutura for.
Contexto:
No fechamento do caixa de um mercado, o gerente precisa somar o total das vendas realizadas em uma lista de valores. Em vez de somar manualmente, o sistema deve percorrer todos os valores armazenados em uma lista e calcular a soma e a média das vendas do dia.
Instruções:
- Crie a função
soma_media(valores)que recebe uma lista como parâmetro e retorna a soma e a média dos elementos. - No programa principal, crie uma lista vazia, leia 5 valores com um laço
foradicionando-os comappend(), chame a função e imprima os valores retornados.
Entradas:
- Cinco valores (float), um por linha.
Saída esperada:
- O valor da soma e o da média, cada um em uma linha.
Exemplo:
Entrada
1020304050Saída
Soma: 150.0Média: 30.0Exercício 09: Maior e Menor de um Vetor
Seção intitulada “Exercício 09: Maior e Menor de um Vetor”Competência: Funções com retorno e parâmetro, vetores (listas), operadores de comparação, input() e estrutura de repetição.
Contexto:
Em um campeonato de ginástica, a banca de jurados atribui uma nota a cada atleta. Para definir os destaques da competição, o sistema precisa identificar a maior e a menor nota recebida por um atleta, comparando todos os valores da lista de notas.
Instruções:
- Crie a função
maior_menor(lista)que recebe uma lista como parâmetro, percorre seus elementos e retorna o maior e o menor valor. - No programa principal, leia a quantidade
n, crie uma lista de notas lendonvalores com um laçofor, chame a função e imprima o maior e o menor valor. - Não utilize as funções
max()emin().
Entradas:
- Quantidade N de notas (inteiro)
- N notas (float), uma por linha.
Saída esperada:
- A maior nota e a menor nota entre os valores lidos, cada uma em uma linha.
Exemplo:
Entrada
57.59.06.08.04.5Saída
Maior: 9.0Menor: 4.5Exercício 10: Contagem de Ocorrências
Seção intitulada “Exercício 10: Contagem de Ocorrências”Competência: Funções com retorno e parâmetro, vetores (listas), estruturas de repetição, operadores de comparação e lógica.
Contexto:
Em um sistema de controle de estoque, o gerente quer saber quantas vezes um determinado produto foi registrado em uma lista de movimentações do dia. Para isso, o sistema deve percorrer todo o vetor e contar quantas vezes o nome do produto aparece na lista, exigindo a combinação de funções, vetores, laços e um contador.
Instruções:
- Crie a função
contar(produtos, produto_procurado)que recebe uma lista e um valor como parâmetros e retorna quantas vezesxaparece na lista. - No programa principal, leia a quantidade
n, crie uma lista lendonvalores com um laçofor, leia o valorproduto_procuradoa ser procurado, chame a função e imprima o total retornado.
Entradas:
- Quantidade N de produtos (inteiro)
- N produtos (string), um por linha
- Valor produto_procurado a ser pesquisado (string)
Saída esperada:
- Uma frase informando quantas vezes o
produto_procuradoaparece na lista.
Exemplo:
Entrada
5lapiscanetalapisborrachalapisSaída
O valor 3 aparece 3 vezes.Exercício 11 (Bônus): Sequência de Fibonacci
Seção intitulada “Exercício 11 (Bônus): Sequência de Fibonacci”Competência: Funções com retorno e parâmetro, vetores, laços for e operadores aritméticos.
Contexto:
Em um desafio de matemática da feira de ciências, os participantes precisam gerar rapidamente os primeiros termos da famosa sequência de Fibonacci, na qual cada termo é a soma dos dois anteriores. O responsável pelo evento quer um programa que monte essa sequência automaticamente.
Instruções:
- Crie a função
fibonacci(n)que recebe um inteiro e retorna uma lista com os primeirosntermos da sequência (começando em0e1). - No programa principal, leia
n, chame a função e imprima cada termo da lista retornada.
Entradas:
- Quantidade N de termos (inteiro)
Saída esperada:
- Os primeiros N termos da sequência de Fibonacci, um por linha.
Exemplo:
Entrada
8Saída
011235813Exercício 12 (Bônus): Verificando Palíndromos
Seção intitulada “Exercício 12 (Bônus): Verificando Palíndromos”Competência: Funções com retorno e parâmetro, strings, laços e condicionais.
Contexto:
No quiz da feira de ciências, uma rodada desafia os participantes a dizer se uma palavra é palíndromo, ou seja, se pode ser lida igualmente de trás para frente. Para evitar erros de digitação, o organizador quer um programa que faça essa verificação automaticamente.
Instruções:
- Crie a função
eh_palindromo(palavra)que recebe uma string, percorre seus caracteres comparando as extremidades e retornaTrueouFalse. - No programa principal, leia uma palavra, chame a função e imprima a conclusão.
Entradas:
- Uma palavra (string)
Saída esperada:
- A conclusão sobre a palavra ser ou não palíndromo.
Exemplo:
Entrada
araraSaída
é palíndromo