Seção de exercícios

Nesta seção você encontrará exercícios de fixação referente às aulas do módulo básico. Em todo exercício haverá um enunciado contextualizando o problema, seguido por uma tabela com casos de teste para o aluno confirmar a correta execução do seu código.

Aula 4 - Operações aritméticas.

Os exercícios a seguir são recomendados caso você já tenha assistido as quatro primeiras aulas.

Faça um programa que leia dois valores inseridos pelo usuário, some os dois valores e imprima o resultado na tela.
Fonte adaptada: URI 1001

Exemplos de entrada Exemplos de saída
10
9
19
-10
4
-6
15
-7
8

Faça um programa que leia o valor de um raio inserido pelo usuário e cálcule a área do círculo. A fórmula para calcular a área do círculo é: A = π r 2 Para esse problema, considere que π = 3.14159.
Fonte adaptada: URI 1002

Exemplos de entrada Exemplos de saída
2.00 12.5664
100.64 31819.3103
150.00 70685.7750

Faça um programa que calcule a média ponderada de um aluno. Leia três notas, a primeira nota tem peso 2, a segunda nota tem peso 3 e a terceira nota tem peso 5. Calcule a média ponderada e imprima o resultado na tela. Considere que cada nota pode ir de 0 a 10.0.
Fonte adaptada: URI 1006

Exemplos de entrada Exemplos de saída
5.0
6.0
7.0
6.3
5.0
10.0
10.0
9.0
10.0
10.0
5.0
7.5

Faça um programa que calcule o salário de um funcionário. Seu programa deve receber do usuário a quantidade de horas trabalhadas e o valor que recebe por hora, calcule o salário e imprima-o na tela.
Fonte adaptada: URI 1008

Exemplos de entrada Exemplos de saída
100
5.50
550.0
200
20.50
4100.0
145
15.55
2254.75

Aula 6 - Formatação de strings.

Os exercícios a seguir são recomendados caso você já tenha assistido as seis primeiras aulas.

Faça um programa que recebe um número inteiro correspondente à idade de uma pessoa em dias e transforma esse valor em anos, meses e dias. Para facilitar o cálculo, considere que o ano possui 365 dias e todos os meses apenas 30 dias.
Fonte adaptada: URI 1020

Exemplos de entrada Exemplos de saída
400 1 ano(s)
1 mes(es)
5 dia(s)
800 2 ano(s)
2 mes(es)
10 dia(s)
30 0 ano(s)
1 mes(es)
0 dia(s)

Faça um programa que recebe um número inteiro correspondente a duração de um evento esportivo em segundos, transforme esse tempo para o formato horas:minutos:segundos e imprima na tela.
Fonte adaptada: URI 1019

Exemplos de entrada Exemplos de saída
556 0:9:16
1 0:0:1
140153 38:55:53

Faça um programa que calcule quantos litros de combustível serão gastos em uma viagem ao utilizar um automóvel que gasta 1 litro de combustível para percorrer 12 quilômetros. O usuário informará ao seu programa o tempo gasto na viagem (em horas) na primeira linha e na segunda a velocidade média durante o trajeto (em km/h). Imprima a quantidade necessária de combustível para realizar a viagem com três dígitos após o ponto.
Fonte adaptada: URI 1017

Exemplos de entrada Exemplos de saída
10
85
A quantidade de combustível necessária é de 70.833 litros
2
92
A quantidade de combustível necessária é de 15.333 litros
22
67
A quantidade de combustível necessária é de 122.833 litros

Faça um programa que calcule o menor número possível de notas (cédulas) que um valor, inserido pelo usuário, pode ser decomposto. As notas consideradas são de 100, 50, 20, 10, 5, 2 e 1. Dica: use o operador matemático '%' (divisão por módulo).
Fonte adaptada: URI 1018

Exemplos de entrada Exemplos de saída
576 5 nota(s) de R$ 100,00
1 nota(s) de R$ 50,00
1 nota(s) de R$ 20,00
0 nota(s) de R$ 10,00
1 nota(s) de R$ 5,00
0 nota(s) de R$ 2,00
1 nota(s) de R$ 1,00
11257 112 nota(s) de R$ 100,00
1 nota(s) de R$ 50,00
0 nota(s) de R$ 20,00
0 nota(s) de R$ 10,00
1 nota(s) de R$ 5,00
1 nota(s) de R$ 2,00
0 nota(s) de R$ 1,00
999999 9999 nota(s) de R$ 100,00
1 nota(s) de R$ 50,00
2 nota(s) de R$ 20,00
0 nota(s) de R$ 10,00
1 nota(s) de R$ 5,00
2 nota(s) de R$ 2,00
0 nota(s) de R$ 1,00

Aula 9 - Estrutura condicional.

Os exercícios a seguir são recomendados caso você já tenha assistido as nove primeiras aulas.

Faça um programa que calcule o valor de um imposto de renda em um país fictício. O usuário entrará com o valor do salário com duas casas decimais, seu programa deve calcular o valor que o usuário pagará de imposto seguindo as regras adiante.
De 0 a 2000.00 o salário é isento de imposto, de 2000.01 a 3000.00 o imposto é de 8%, de 3000.01 a 4500.00 o imposto é de 18% e acima de 4500.00 o imposto é de 28%. Lembre-se que cada porcentagem de imposto incide apenas naquela faixa de renda, caso o salário do usuário seja 3200.00 por exemplo, o imposto a ser pago pode ser calculado por 8% de 1000 + 18% de 200.00.
Fonte adaptada: URI 1051

Exemplos de entrada Exemplos de saída
3002.00 O total de imposto a pagar é: $80.36
1701.12 O total de imposto a pagar é: $0
4520.00 O total de imposto a pagar é: $355.60

Faça um programa que identifique o local no plano (eixo cartesiano com duas dimensões) em que se encontra um ponto inserido pelo usuário (primeira linha corresponde ao valor de x no par ordenado, a segunda linha corresponde ao valor de y). Caso o ponto esteja na origem, imprima na tela a mensagem 'O ponto se encontra na origem', se o ponto estiver sobre um dos eixos imprima a mensagem 'O ponto se encontra sobre o eixo X', ou 'O ponto se encontra sobre o eixo Y' dependendo da situação, caso nenhuma das situações descritas anteriormente descreva a posição do ponto, informe o quadrante em que ele se encontra.
Fonte adaptada: URI 1041

Exemplos de entrada Exemplos de saída
4.5
-2.2
O ponto se encontra no 4º quadrante
0.1
0.1
O ponto se encontra no 1º quadrante
0.0
0.0
O ponto se encontra na origem

Faça um programa que leia três valores inseridos pelo usuário e calcula as raízes da equação de Bhaskara. Caso não seja possível calcular as raízes, imprima uma mensagem ao usuário, informando-o que não é possível executar o cálculo. Considere que o usuário irá inserir os valores na seguinte ordem: a, b e c (ax² + bx + c).
Fonte adaptada: URI 1036

Exemplos de entrada Exemplos de saída
10.0
20.1
5.1
R1 = -0.29788
R2 = -1.71212
0.0
20.0
5.0
Impossivel calcular
10.3
203.0
5.0
R1 = -0.02466
R2 = -19.68408

Faça um programa que execute a lógica de cálculo de preços em um caixa. Seu programa receberá do usuário dois valores inteiros, o primeiro é correspondente ao código do produto a ser comprado, o segundo valor é a quantidade desse item. Utilizando as instruções adiante, calcule o preço total da compra.
O produto de código 1 custa R$ 4.00, o produto de código 2 custa R$ 4.50, o produto de código 3 custa R$ 5.00, o produto de código 4 custa R$ 2.00, o produto de código 5 custa R$ 1.50. Caso o código do produto não se encaixe em nenhuma das possibilidades citadas, imprima na tela uma mensagem de erro ao usuário.
Fonte adaptada: URI 1038

Exemplos de entrada Exemplos de saída
3
2
Total: R$ 10.00
4
3
Total: R$ 6.00
7
2
Código de produto inválido

Aula 12 - Estrutura de repetição.

Os exercícios a seguir são recomendados caso você já tenha assistido as doze primeiras aulas.

Faça um programa que calcule o fatorial de um número inserido pelo usuário.

Exemplos de entrada Exemplos de saída
5 120
7 5040
10 3628800

Faça um programa que calcule a média de diversos números inseridos pelo usuário. Para isso, crie uma função que recebe como parâmetro a quantidade de notas que serão inseridas e retorne a média, com duas casas decimais, para quem a invocou. Receba a quantidade de notas do usuário e depois receba cada nota até chegar na quantidade solicitada.

Exemplos de entrada Exemplos de saída
3
3
7
9
A média é 3.33
5
4
12
8
5.6
7
A média é 7.32
4
150
16.3
87.23
56.8
A média é 77.58

Faça um programa que valide uma senha. Seu programa deve receber um número inteiro do usuário, correspondente a uma senha, até que essa senha seja válida. Para cada leitura incorreta da senha, imprima a mensagem "Senha incorreta", quando a senha for informada corretamente imprima a mensagem "Acesso permitido". Considere que a senha correta é o número 2002.
Fonte adaptada: URI 1014

Exemplos de entrada Exemplos de saída
2200
1020
2022
2002
Senha incorreta
Senha incorreta
Senha incorreta
Acesso permitido

Faça um programa que organiza os experimentos de um laboratório. O usuário quer saber quantas cobaias foram utilizadas no laboratório e o percentual de cada tipo de cobaia utilizada. Este laboratório utiliza três tipos de cobaias: sapos, ratos e coelhos. Para obter estas informações, o usuário sabe exatamente o número de experimentos que foram realizados, o tipo de cobaia utilizada e a quantidade de cobaias utilizadas em cada experimento.
A primeira linha de entrada contém um valor inteiro que indica os vários casos de teste que vem a seguir. Cada caso de teste contém um inteiro que representa a quantidade de cobaias utilizadas e um caractere Tipo ('C', 'R' ou 'S'), indicando o tipo de cobaia (R: Rato S: Sapo C: Coelho).
Apresente na saída do programa o total de cobaias utilizadas, o total de cada tipo de cobaia utilizada e o percentual de cada uma em relação ao total de cobaias utilizadas, sendo que o percentual deve ser apresentado com dois dígitos após o ponto.
Fonte adaptada: URI 1094

Exemplos de entrada Exemplos de saída
5
10
C
6
R
15
S
5
C
14
R
Total: 50 cobaias
Total de coelhos: 15
Total de ratos: 20
Total de sapos: 15
Percentual de coelhos: 30.00 %
Percentual de ratos: 40.00 %
Percentual de sapos: 30.00 %

Aula 15 - Listas.

Os exercícios a seguir são recomendados caso você já tenha assistido as quinze primeiras aulas.

Faça um programa que recebe palavras do usuário até que ele insira uma linha em branco (string vazia). Após o usuário inserir essa linha em branco, você deve imprimir na tela cada palavra inserida pelo usuário, palavras repetidas não devem ser exibidas na tela. As palavras devem ser impressas na ordem em que foram inseridas no programa.

Exemplos de entrada Exemplos de saída
first
second
first
third
second
first
second
third

Faça um programa que converta uma lista de temperaturas de Fahrenheit para Celsius, em seu programa o usuário deverá inserir uma sequência de valores que representam a temperatura em graus Fahrenheit, seu programa deve receber esses valores e armazenar em uma lista até que o valor inserido pelo usuário seja um valor em branco (uma string vazia). Converta todos os valores presentar na lista para graus Celsius e imprima na tela em uma formatação amigável ao usuário.

Exemplos de entrada Exemplos de saída
86
77
89.6
73.4
69.8
86 ºF corresponde a 30 ºC
77 ºF corresponde a 25 ºC
89.6 ºF corresponde a 32 ºC
73.4 ºF corresponde a 23 ºC
69.8 ºF corresponde a 21 ºC

Faça um programa que leia diversos valores recebidos pelo usuário e armazene-os em uma lista. Seu programa deve parar de receber valores do usuário a partir do momento que ele insere uma linha em branco (string vazia). Em seguida, imprima na tela o menor valor que o usuário inseriu e a posição desse valor na lista.
Fonte adaptada: URI 1180

Exemplos de entrada Exemplos de saída
1
2
3
4
-5
6
7
8
9
10
Menor valor: -5
Posição: 4

Faça um programa que analise a curva de velocidade de um motor. O engenheiro Zé percebeu que sempre ocorriam quedas na velocidade porém elas não tinham um padrão, para determinar isso, o engenheiro solicitou a você que construa um programa que, dada uma sequência de RPM, informa o índice em que houve a primeira queda de velocidade no teste. É considerada uma queda de velocidade se a medição atual é menor que a medição imediatamente anterior. Para facilitar a usabilidade do usuário, o índice dos testes deve começar em 1, não em 0.
A primeira linha da entrada corresponde o número de medidas de velocidade, a segunda linha contém os valores a serem analisados. A saída deve ser 0 caso não ocorra nenhuma queda de velocidade.
Fonte adaptada: URI 2167

Exemplos de entrada Exemplos de saída
3
1 4 2
3
5
100 199 199 198 0
4
4
1 2 2 2
0

Aula 16 - Strings.

Os exercícios a seguir são recomendados caso você já tenha assistido as dezesseis primeiras aulas.

Faça um programa que receba do usuário diversos nomes, seu programa deve ler os nomes até se seja inserido uma linha em branco (string vazia). Em seguida, para cada nome inserido, transforme as letras minúsculas em maiúsculas e vice-versa. Após isso, imprima na tela os nomes alterados.

Exemplos de entrada Exemplos de saída
Carlos
MarCos
RobErtA
jULIA
cARLOS mARcOS rOBeRTa Julia

Faça um programa que recebe uma string do usuário e informa se ela é um palíndromo. Um palíndromo é uma frase que, excluindo os espaços em branco, pode ser lida indiferentemente da esquerda para a direita e da direita para a esquerda. Alguns palíndromos conhecidos são: ovo, radar, a grama é amarga, a base to teto desaba.

Exemplos de entrada Exemplos de saída
Ato idiota É um palíndromo
Luz azul É um palíndromo
Ponto de taxi Não é um palíndromo

Aula 17 - Tuplas e dicionários.

Os exercícios a seguir são recomendados caso você já tenha assistido as dezessete primeiras aulas.

Faça um programa que conta quantos caracteres únicos existem em uma string. A string 'Hello, world!' tem dez caracteres únicos, enquanto a string 'zzz' tem apenas um. Utilize um dicionário para resolver esse problema.

Exemplos de entrada Exemplos de saída
Tuplas e Dicionários
15
Curso de Python
13
A próxima aula é sobre aninhamento
19

Faça uma função que encontre todas as chaves que estão associadas a um determinado valor em um dicionário. A função receberá no primeiro parâmetro o dicionário a ser analisado, e como segundo parâmetro o valor da chave a ser buscada. A função retornará uma lista com as chaves encontradas, essa lista pode ter diversos valores, apenas um ou nenhum. Nos exemplos, a função foi chamada de procuraReversa.

Exemplos de entrada Exemplos de saída
procuraReversa({ 'chave1': True, 'chave2': False, 'chave3': True, 22: True }, True)
['chave1', 'chave3', 22]
procuraReversa({ 'first': 22, 'second': 33, 'third': 44 }, 22)
['first']
procuraReversa({ 'first': 22, 'second': 33, 'third': 44 }, True)
[]

Aula 19 - Matrizes.

Os exercícios a seguir são recomendados caso você já tenha assistido as dezenove primeiras aulas.

Faça um programa que cria uma matriz M (2 x 2), sendo que cada elemento deve ser digitado pelo usuário. Então, seu programa deve criar outra matriz, N, que é resultante da multiplicação de cada elemento da matriz M pelo maior elemento da matriz M.

Exemplos de entrada Exemplos de saída
[2, 3]
[1, 2]
[6, 9]
[3, 6]

Faça um programa que o usuário preenche uma matriz M (3 x 3), em seguida imprima na tela a matriz transposta de M. Determinar a transposta de uma matriz é reescrevê-la de forma que suas linhas e colunas troquem de posições ordenadamente, isto é, a primeira linha é reescrita como a primeira coluna, a segunda linha é reescrita como a segunda coluna e assim por diante, até que se termine de reescrever todas as linhas na forma de coluna.

Exemplos de entrada Exemplos de saída
[7, 8, 9]
[4, 5, 6]
[1, 2, 3]
[7, 4, 1]
[8, 5, 2]
[9, 6, 3]

Aula 20 - Arquivos.

Os exercícios a seguir são recomendados caso você já tenha assistido as vinte primeiras aulas.

Faça um programa que cria um arquivo com todos os anos bissextos entre 1800 e 2020 inclusive.

Exemplos de entrada Exemplos de saída
1804
1808
1812
.
.
.
2020

Faça um programa que leia um arquivo e retorna a somatória de todos os números desse arquivo. Todos os números estão em apenas uma linha e separados por um espaço em branco.

Exemplos de entrada Exemplos de saída
Link para download do arquivo 20435