Pular para o conteúdo principal

Aula 02: exercícios

Solução dos exercícios da aula 02

Exercício 1

Tente concatenar uma string com um número inteiro

In [1]:
s = "Uma string"
x = 10
s + x
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/tmp/ipykernel_19451/276236657.py in <module>
      1 s = "Uma string"
      2 x = 10
----> 3 s + x

TypeError: can only concatenate str (not "int") to str

Exercício 2

Faça um programa que peça dois números inteiros. Imprima na tela a soma desses números

In [2]:
x1 = int(input("Entre com um número inteiro: "))
x2 = int(input("Entre com outro número inteiro: "))
soma = x1 + x2
print(soma)
Entre com um número inteiro: 12
Entre com outro número inteiro: 15
27

Exercício 3

Escreve um programa que leia um valor em metros e o exiba na tela em milímetros.

In [3]:
xm = float(input("Entre com o comprimento em metros: "))
xmm = xm * 1000

print(f"{xm}m = {xmm}mm")
Entre com o comprimento em metros: 4.5
4.5m = 4500.0mm

Exercício 4

Escreva um programa que leia uma quantidade de dias, horas e minutos e calcule o total de segundos

In [5]:
dias = int(input("Entre com o número de dias: "))
horas = int(input("Entre com o número de horas: "))
minutos = int(input("Entre com o número de minutos: "))
Entre com o número de dias: 2
Entre com o número de horas: 8
Entre com o número de minutos: 45
In [6]:
segundos = 60*(minutos + 60*(horas + 24*dias))
segundos
Out[6]:
204300

Exercício 5

Escreve um programa que converta a temperatura digitada em °C em °F.

In [7]:
oC = float(input("Entre com a temperatura em °C: "))
oF = oC * 9/5 + 32
oF
Entre com a temperatura em °C: 10
Out[7]:
50.0

Exercício 6

O que acontece se a == b? Teste!

In [8]:
a = int(input("Primeiro valor: "))
b = int(input("Segundo valor: "))
if a>b:
    print("O primeiro valor é maior!")
    
if b>a:
    print("O segundo valor é maior!")
Primeiro valor: 12
Segundo valor: 10
O primeiro valor é maior!

Exercício 7

Escreva um programa que pergunte a velocidade do carro de um usuário. Caso ultrapasse 80 km/h, exiba uma mensagem dizendo que o usuário foi multado. Nesse caso, exiba o valor da multa cobrando R$ 5 por km/h acima de 80 km/h.

In [9]:
V = float(input("Entre com a velocidade do carro em km/h: "))
if V > 80:
    multa = (V-80) * 5
    msg = f"Você estava a {V}km/h. Você foi multado em R${multa:5.2f}"
    print(msg)
Entre com a velocidade do carro em km/h: 88
Você estava a 88.0km/h. Você foi multado em R$40.00

Exercicio 8

Escreva um programa que lê três números e imprima o valor do maior

In [13]:
n1 = int(input("Entre com o primeiro número: "))
n2 = int(input("Entre com o segundo número: "))
n3 = int(input("Entre com o terceiro número: "))

if n1 >= n2:
    maior = n1
if n2 > n1:
    maior = n2
if n3 > maior:
    maior = n3

print(f"O número {maior} é o maior número!")
Entre com o primeiro número: 5
Entre com o segundo número: 10
Entre com o terceiro número: 2
O número 10 é o maior número!

Exercício 9

Brinque com os programas acima entrando diferentes valores

In [11]:
# Programa do exercício 6:
a = int(input("Primeiro valor: "))
b = int(input("Segundo valor: "))
if a>b:
    print("O primeiro valor é maior!")
else:
    print("O segundo valor é maior ou igual!")
Primeiro valor: 3
Segundo valor: 2
O primeiro valor é maior!
In [14]:
# Programa do exercício 8
n1 = int(input("Entre com o primeiro número: "))
n2 = int(input("Entre com o segundo número: "))
n3 = int(input("Entre com o terceiro número: "))

if n1 >= n2:
    maior = n1
else:
    maior = n2

if n3 > maior:
    maior = n3

print(f"O número {maior} é o maior número!")
Entre com o primeiro número: 20
Entre com o segundo número: 2
Entre com o terceiro número: 6
O número 20 é o maior número!

Exercício 10

Escreva um programa que pergunte a distância que um passageiro vai percorrer em km. Calcule o preço da passagem, cobrando R$ 0,50 por km para viagens de até 200 km e R 0,45 para viagens mais longas

In [15]:
distancia = float(input("Entre com a distância (km) a ser percorrida: "))

if distancia <= 200:
    preco_km = 0.5
else:
    preco_km = 0.45

preco_total = distancia * preco_km

print(f"A o preço da viagem é de R${preco_total:5.2f} com preço por km de R${preco_km:5.2f}")
Entre com a distância (km) a ser percorrida: 245
A o preço da viagem é de R$110.25 com preço por km de R$ 0.45

Exercício 11

Escreva um programa que leia dois números e que pergunte qual operação o usuário quer realizar e calcule esta operação. As operações válidas são:

In [16]:
x1 = float(input("Entre com um número: ")) 
x2 = float(input("Entre com outro número: ")) 
op = input("Entre com uma operação (+,-,*,/,**): ")

if op == '+':
    r = x1 + x2
elif op == '-':
    r = x1 - x2
elif op == '*':
    r = x1 * x2
elif op == '/':
    r = x1 / x2
elif op == '**':
    r = x1 ** x2
else:
    print("Operação desconhecida!")
    r = 0

print(f"{x1} {op} {x2} = {r}")
    
Entre com um número: 3
Entre com outro número: 6
Entre com uma operação (+,-,*,/,**): *
3.0 * 6.0 = 18.0

Exercício 12

Escreva um programa que calcule o preço a pagar pelo fornecimento de energia elétrica. Pergunte a quantidade de kWh conmsumida e o tipo de instalação:

  • R: residências
  • I: indústrias
  • C: comércios

Calcule o preço da conta de luz de acordo com as regras a seguir:

Tipo Faixa (kWh) Preço
Residencial Até 500 R\$ 0,40
Acima de 500 R\$ 0,65
Comercial Até 1000 R\$ 0,55
Acima de 1000 R\$ 0,60
Industrial Até 5000 R\$ 0,55
Acima de 5000 R\$ 0,60
In [17]:
Q = float(input("Entre com o consumo (kWh): "))
inst = input("Entre com o tipo de instalação (R/C/I)? ")

if inst == 'R':
    if Q <= 500:
        print(f"A conta é de R${0.40*Q:5.2f}.")
    else:
        print(f"A conta é de R${0.65*Q:5.2f}.")
elif inst == 'C':
    if Q <= 1000:
        print(f"A conta é de R${0.55*Q:5.2f}.")
    else:
        print(f"A conta é de R${0.60*Q:5.2f}.")
elif inst == 'I':
    if Q <= 5000:
        print(f"A conta é de R${0.55*Q:5.2f}.")
    else:
        print(f"A conta é de R${0.60*Q:5.2f}.")
else:
    print(f'Erro: {inst} não é um tipo de instalação conhecido!')    
Entre com o consumo (kWh): 200
Entre com o tipo de instalação (R/C/I)? R
A conta é de R$80.00.

Exercício 13

Faça um programa para exibir os números de 1 a 100

In [18]:
i = 1
N = 100
while i <= N:
    print(i)
    i += 1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100

Exercício 14

Modifique o programa para exibir os números de 50 a 100

In [19]:
i = 50
N = 100
while i <= N:
    print(i)
    i += 1
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100

Exercício 15

Escreva um programa que faz a contagem regressiva para o lançamento de um foguete: 10,9,...,1,Fogo

In [20]:
print('Iniciando contagem regressiva...')
i = 10
while i > 0:
    print(i)
    i -= 1
print("Fogo!")
Iniciando contagem regressiva...
10
9
8
7
6
5
4
3
2
1
Fogo!

Exercício 16

Modifique os programas anteriores para imprimir os números ímpares.

In [21]:
fim = int(input("Digite o último número a imprimir: "))
x = 1
while x <= fim:
    if x %2 == 1:
        print(x)
    x += 1
Digite o último número a imprimir: 23
1
3
5
7
9
11
13
15
17
19
21
23
In [22]:
fim = int(input("Digite o último número a imprimir: "))
x = 1
while x <= fim:
    print(x)
    x += 2
Digite o último número a imprimir: 23
1
3
5
7
9
11
13
15
17
19
21
23

Exercício 17

Reescreva o programa para escrever os 10 primeiros múltiplos de 3

In [23]:
i = 1
while i <= 10:
    print(i*3)
    i += 1

    
3
6
9
12
15
18
21
24
27
30

Exercício 18

Escreve um programa que recebe um número e escreve a tabuada desse número. Exemplo do resultado para o número 2:

2 x 1 = 2

2 x 2 = 4

...

2 x 10 = 20

In [24]:
num = int(input("Entre com um número: "))

i = 1
while i <= 10:
    print(f"{num:>3} x {i:>2} = {num*i}")
    i += 1
Entre com um número: 7
  7 x  1 = 7
  7 x  2 = 14
  7 x  3 = 21
  7 x  4 = 28
  7 x  5 = 35
  7 x  6 = 42
  7 x  7 = 49
  7 x  8 = 56
  7 x  9 = 63
  7 x 10 = 70

Exercício 19

Escreva um programa que calcula a divisão inteira entre dois números usando + apenas

In [27]:
x1 = int(input("Entre com um inteiro: "))
x2 = int(input("Entre com um inteiro: "))

divisão = 0
total = x2
while total <= x1:
    total = total + x2
    divisão = divisão + 1

print(f"{x1} / {x2} = {divisão}")
Entre com um inteiro: 11
Entre com um inteiro: 2
11 / 2 = 5

Exercício 20

Reescreva o programa de divisão acima com esses operadores de atribuição especial.

In [28]:
x1 = int(input("Entre com um inteiro: "))
x2 = int(input("Entre com um inteiro: "))

divisão = 0
total = x2
while total <= x1:
    total += x2
    divisão +=  + 1

print(f"{x1} / {x2} = {divisão}")
Entre com um inteiro: 11
Entre com um inteiro: 6
11 / 6 = 1

Exercício 21

Escreva um programa que determina se um número é primo ou não. Um número é primo se ele é divisível por 1 e por ele mesmo apenas. Dica: use o operador resto (%) para saber se um número é divisível por outro.

In [29]:
num = int(input("Entre com um número inteiro: "))

ntot = 1
i = 2
while i < num:
    if num % i == 0:
        ntot += 1
        break # Repare!
    i += 1
    
if ntot > 1:
    print(f"O número {num} não é um número primo")
else:
    print(f"O número {num} é um número primo")
Entre com um número inteiro: 53
O número 53 é um número primo

Exercício 22

Escreva um programa que recebe um número inteiro n e determina os primeiros n números primos

In [30]:
N = int(input("Entre com um número inteiro: "))
nprim = 1
num = 1
print(1)
while nprim < N:
    i = 2
    while i < num:
        if num % i == 0:
            break
        i += 1
    if i == num: # Não achou divisor! É um número primo!
        print(num)
        nprim += 1
    num += 1
    

    
Entre com um número inteiro: 12
1
2
3
5
7
11
13
17
19
23
29
31

Exercício 23

Não foi dado na aula. Fica para a aula que vem

Comentários

Comments powered by Disqus