Skip to content

Commit 9bad0a3

Browse files
committed
Revisando exercícios 31-40
1 parent 85bf8b4 commit 9bad0a3

11 files changed

+81
-104
lines changed

31 - Fibonacci.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# PROGRAMA QUE LEIA UM NÚMERO INTEIRO N E MOSTRE NA TELA OS N PRIMEIROS TERMOS
2-
# DE UMA SEQUÊNCIA DE FIBONACCI.
1+
n = int(input('Quantos termos você deseja mostrar? >>> '))
32

4-
n = int(input('Quantos termos desejas mostar? >>> '))
53
anterior = 0
64
contador = 1
5+
76
# Os primeiros termos da sequência devem ser 0 e 1
87
t1, t2 = 0, 1
98
print(f'{t1}{t2} → ', end='')
9+
1010
i = 0
1111
while i < n - 2: # n - 2 pois já existem os 2 primeiros termos
1212
contador += anterior

32 - Soma de infinitos números.py

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,14 @@
1-
# PROGRAMA QUE LEIA VÁRIOS NÚMEROS INTEIROS E MOSTRE QUANTOS NÚMEROS FORAM
2-
# DIGITADOS, A SOMA ENTRE ELES E SUA MÉDIA.
3-
# O PROGRAMA SÓ DEVE FINALIZAR QUANDO O USUÁRIO DIGITAR O VALOR 999.
4-
5-
print('='*7, 'SOMA DE NÚMEROS', '='*7)
61
print('Digite vários números para saber a soma total.')
72
print('O programa será encerrado caso você digite 999.')
83

9-
num = 0
10-
soma = 0
11-
quantidade = 0
12-
while num != 999:
13-
soma += num
14-
quantidade += 1
15-
num = int(input())
16-
else: print(f'Você digitou {quantidade-1} números. A soma foi {soma}.')
17-
print(f'A média é {soma / (quantidade-1)}.')
18-
19-
20-
# OUTRA RESOLUÇÃO DO DESAFIO, UTILIZANDO O COMANDO BREAK
21-
print('Digite vários números para saber a soma total.')
22-
print('O programa será encerrado caso você digite 999.')
234
soma = quantidade = 0
5+
246
while True:
257
num = int(input())
268
if num == 999: break
9+
2710
soma += num
2811
quantidade += 1
12+
2913
print(f'A soma dos {quantidade} valores é {soma}.')
3014
print(f'A média é {soma / quantidade}.')

33 - Tabuada v.2.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# VERSÃO 2.
2-
# AGORA O PROGRAMA CONTINUA RODANDO ATÉ O USUÁRIO DIGITAR UM NÚMERO NEGATIVO.
32

43
print('O programa será encerrado caso você digite um número negativo.')
4+
55
while True:
66
num = int(input('Informe um número para saber sua tabuada >>> '))
77
if num < 0: break
8+
89
for i in range(1, 10):
9-
print(f'{num} x {i} = {num*i}')
10-
print('Programa finalizado.')
10+
print(f'{num} x {i} = {num*i}')

34 - Par ou ímpar.py

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,20 @@
1-
# PROGRAMA QUE FAÇA O COMPUTADOR JOGAR PAR OU ÍMPAR COM O USUÁRIO.
2-
# O JOGO SÓ SERÁ INTERROMPIDO QUANDO O USUÁRIO PERDER, MOSTRANDO O TOTAL
3-
# DE VITÓRIAS QUE ELE CONQUISTOU.
4-
5-
print('Hora de jogar par ou ímpar contra o computador.')
6-
print('O jogo será interrompido quando você perder.')
71
from random import randint
82
from time import sleep
93

104
vitória = 0
5+
116
while True:
127
escolha = ' '
138
while escolha not in 'PI':
149
escolha = str(input('Par ou Ímpar? [P/I] >>> ')).upper()
10+
1511
player = int(input('Escolha um número >>> '))
12+
1613
pc = randint(0, 20)
1714
print('O computador escolheu... ', end='')
1815
sleep(1)
1916
print(pc)
17+
2018
soma = player + pc
2119
print(f'A soma deu {soma}.')
2220

@@ -28,8 +26,8 @@
2826
vitória += 1
2927
else:
3028
sleep(1)
31-
print('='*8, 'GAME OVER', '='*8)
29+
print('GAME OVER.')
3230
break
3331

3432
sleep(1)
35-
print(f'Total de {vitória} vitórias.')
33+
print(f'Total de {vitória} vitória(s).')

35 - Cadastro de pessoas v.2.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11
# VERSÃO 2.
2-
# PROGRAMA QUE LEIA A IDADE E O SEXO DE VÁRIAS PESSOAS.
3-
# A CADA PESSOA CADASTRADA O PROGRAMA DEVERÁ PERGUNTAR SE O USUÁRIO
4-
# QUER OU NÃO CONTINUAR.
5-
# NO FINAL, MOSTRE QUANTAS PESSOAS POSSUEM MAIS DE 18 ANOS, QUANTOS HOMENS FORAM
6-
# CADASTRADOS E QUANTAS MULHERES POSSUEM MENOS DE 21 ANOS.
72

8-
c = 'S'
93
maior = homem = mulher = 0
4+
c = 'S'
5+
106
while c == 'S':
117
print('Cadastre uma pessoa...')
128

@@ -16,14 +12,18 @@
1612
sexo = ' '
1713
while sexo not in 'MF':
1814
sexo = str(input('Sexo [M/F]: ')).upper()
19-
if sexo == 'M': homem += 1
20-
if sexo == 'F' and idade < 21: mulher += 1
2115

22-
print('-'*25)
16+
if sexo == 'M':
17+
homem += 1
18+
if sexo == 'F' and idade < 21:
19+
mulher += 1
20+
21+
print('-' * 40)
2322

2423
c = str(input('Deseja cadastrar mais alguém? [S/N]: ')).upper()
2524

26-
print('='*8, 'PROGRAMA FINALIZADO', '='*8)
25+
print()
26+
print('='*10, 'PROGRAMA FINALIZADO', '='*10)
2727
print(f'Total de pessoas com mais de 18 anos: {maior}')
2828
print(f'Homens cadastrados: {homem}')
2929
print(f'Mulheres com menos de 21 anos: {mulher}')

36 - Estatísticas em produtos.py

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,28 @@
1-
# PROGRAMA QUE LEIA O NOME E O PREÇO EM VÁRIOS PRODUTOS.
2-
# O PROGRAMA DEVERÁ PERGUNTAR SE O USUÁRIO VAI CADASTRAR OU NÃO MAIS PRODUTOS.
3-
# NO FINAL, MOSTRE QUAL FOI O TOTAL GASTO, QUANTOS PRODUTOS CUSTAM MAIS DE R$500,
4-
# E QUAL FOI O PRODUTO MAIS BARATO.
1+
total = itens_caros = valor_barato = cont = 0
2+
nome_barato = ''
53

6-
print('=-='*5, 'COMPRAS', '=-='*5)
7-
total = caro = barato = cont = 0
8-
nomeB = ''
94
while True:
105
produto = str(input('Nome do produto: '))
6+
preço = float(input('Preço: R$'))
117

12-
preço = int(input('Preço: R$'))
138
cont += 1
149
total += preço
15-
if preço > 500: caro += 1
10+
11+
if preço > 500:
12+
itens_caros += 1
13+
1614
# O primeiro produto é cadastrado como o mais barato
17-
if cont == 1 or preço < barato:
18-
barato = preço
19-
nomeB = produto
15+
if cont == 1 or preço < valor_barato:
16+
valor_barato = preço
17+
nome_barato = produto
2018

2119
c = ' '
2220
while c not in 'SN':
2321
c = str(input('Deseja cadastrar outro produto? [S/N]: ')).upper()
2422
if c == 'N': break
2523

24+
print()
2625
print('='*10, 'PROGRAMA FINALIZADO', '='*10)
27-
print(f'O total da compra foi R${total:.2f}')
28-
print(f'Temos {caro} produtos custando mais de R$500.00')
29-
print(f'O produto mais barato foi o {nomeB}, que custa {barato:.2f}')
26+
print(f'O total da compra foi: R${total:.2f}')
27+
print(f'Temos {itens_caros} produtos custando mais de R$500.00')
28+
print(f'O produto mais barato foi o {nome_barato}, que custa R${valor_barato:.2f}')

37 - Caixa eletrônico.py

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,41 @@
1-
# PROGRAMA QUE SIMULE O FUNCIONAMENTO DE UM CAIXA ELETRÔNICO.
2-
# NO INÍCIO PERGUNTE AO USUÁRIO QUAL SERÁ O VALOR SACADO E DEPOIS O
3-
# PROGRAMA DEVERÁ INFORMAR QUANTAS CÉDULAS DE CADA VALOR SERÃO ENTREGUES.
4-
# CONSIDERA QUE O CAIXA SÓ POSSUI CÉDULAS DE R$50, R$20, R$10 E R$1.
1+
valor = int(input('Quanto você deseja sacar? R$ '))
52

6-
print('=-='*5, 'CAIXA ELETRÔNICO', '=-='*5)
7-
valor = int(input('Quanto você deseja sacar? R$'))
8-
# Cédula inicial será a de 50
9-
c = 50
10-
totalC = 0
11-
total = valor
12-
# Começa o programa retirando cédulas de 50
3+
# Cédula inicial será a de 50.
4+
cédula = 50
5+
total_cédulas = 0
6+
total_restante = valor
7+
8+
# Começa o programa retirando cédulas de 50.
139
while True:
14-
if total >= c:
15-
total -= c
16-
totalC += 1
17-
# Quando não puder mais retirar cédulas de 50
10+
if total_restante >= cédula:
11+
total_restante -= cédula
12+
total_cédulas += 1
13+
# Quando não puder mais retirar cédulas de 50
1814
else:
19-
if totalC != 0: print(f'{totalC} cédulas de R${c:.2f}')
20-
if c == 50: c = 20
21-
elif c == 20: c = 10
22-
elif c == 10: c = 1
23-
totalC = 0
24-
if total == 0: break
25-
print('='*8, 'SAQUE FINALIZADO', '='*8)
15+
if total_cédulas != 0:
16+
print(f'{total_cédulas} cédulas de R${cédula:.2f}')
17+
if cédula == 50:
18+
cédula = 20
19+
elif cédula == 20:
20+
cédula = 10
21+
elif cédula == 10:
22+
cédula = 1
23+
total_cédulas = 0
24+
if total_restante == 0: break
25+
2626

2727

28-
# OUTRA RESOLUÇÃO DO DESAFIO, USANDO LÓGICA
29-
valor = int(input('Quanto você deseja sacar? R$'))
28+
# Outra resolução do desafio.
29+
valor = int(input('Quanto você deseja sacar? R$ '))
30+
3031
c50 = valor // 50
3132
valor %= 50
3233
c20 = valor // 20
3334
valor %= 20
3435
c10 = valor // 10
3536
valor %= 10
3637
c1 = valor
38+
3739
if c50 != 0: print(f'{c50} cédulas de R$50.00')
3840
if c20 != 0: print(f'{c20} cédulas de R$20.00')
3941
if c10 != 0: print(f'{c10} cédulas de R$10.00')

38 - Equação do segundo grau v.2.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
# VERSÃO 2.
2-
# AGORA O PROGRAMA IDENTIFICA SEPARADAMENTE A POSSIBILIDADE DO DISCRIMINANTE
3-
# SER MENOR, MAIOR OU IGUAL A ZERO.
42

53
from math import sqrt
4+
65
a = float(input('Digite o valor de a: '))
76
b = float(input('Digite o valor de b: '))
87
c = float(input('Digite o valor de c: '))
@@ -11,15 +10,15 @@
1110

1211
if discriminant == 0:
1312
root = - b / (2 * a)
14-
print('Delta é igual a 0. A equação possui apenas uma raiz real.')
13+
print('Discriminate igual a 0. A equação possui apenas uma raiz real.')
1514
print(f'A raiz dessa equação é: {root}')
1615

1716
elif discriminant > 0:
1817
root1 = (- b + sqrt(discriminant)) / (2 * a)
1918
root2 = (- b - sqrt(discriminant)) / (2 * a)
20-
print('Delta é maior que 0. A equação possui duas raízes reais.')
19+
print('Discriminate maior que 0. A equação possui duas raízes reais.')
2120
print(f'As raízes dessa equação são: {root1} e {root2}')
2221

2322
else:
24-
print('Delta é menor que 0.')
23+
print('Discriminate menor que 0.')
2524
print('Essa equação não possui raízes reais.')

39 - Dígitos adjacentes iguais.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
# PROGRAMA QUE ANALISE UM NÚMERO QUALQUER E DIGA SE ELE POSSUI DÍGITOS
2-
# ADJACENTES IGUAIS.
3-
41
number = int(input('Digite um número inteiro qualquer: '))
52

63
while number != 0:

40 - Soma dos dígitos.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
# PROGRAMA QUE FAÇA A SOMA DOS DÍGITOS DE UM NÚMERO.
2-
31
number = int(input('Digite um número inteiro: '))
42

53
digitsSum = 0

README.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -129,51 +129,51 @@ Faça um programa que realize o cálculo da Sequência de Fibonacci. O usuário
129129

130130

131131
### Exercício 32
132-
Faça um programa que leia vário números inteiros e ao final mostre quantos números foram digitados, a soma e a média entre eles. O programa só deve finalizar se o valor digitado pelo usuário for '999'.
132+
Faça um programa que leia vário números inteiros digitados pelo usuário e só interrompa se o valor digitado for '999'. No final, exiba: quantos números foram digitados; a soma entre esses valores; e a média entre eles.
133133

134134

135135
### Exercício 33
136-
Faça um programa que exiba a tabuada dos números e que só finaliza quando o usuário digitar um número negativo.
136+
Faça um programa que exiba a tabuada de um número digitado pelo usuário e só finalize se esse valor for negativo.
137137

138138

139139
### Exercício 34
140-
Faça um programa que seja capaz de jogar Par ou Ímpar com o usuário. O jogo só pode finalizar quando o usuário perder e deve exibir o total de vitórias que ele obteve.
140+
Faça um programa que seja capaz de jogar Par ou Ímpar com o usuário. O jogo só será finalizado quando o usuário perder, exibindo o total de vitórias que ele obteve.
141141

142142

143143
### Exercício 35
144-
Faça um programa que leia a idade e o sexo de várias pessoas. A cada pessoa cadastrada, o programa deve perguntar se o usuário deseja cadastrar mais alguém. Ao final, mostre quantas pessoas possuem mais de 18 anos, quantos homens foram cadastrados e quantas mulheres possuem menos de 21 anos de idade.
144+
Faça um programa que leia a idade e o sexo de várias pessoas. A cada pessoa cadastrada o programa deve perguntar se o usuário deseja cadastrar mais alguém. Ao final, exiba: o número de pessoas com mais de 18 anos; quantos homens foram cadastrados; e quantas mulheres possuem menos de 21 anos de idade.
145145

146146

147147
### Exercício 36
148-
Faça um programa que leia o nome e o preço de vários produtos. A cada produto cadastrado, o programa deve perguntar se o usuário deseja cadastras mais alguma coisa. Ao final, mostre qual foi o total gasto, quantos produtos custam mais de 500 reais e qual é o nome e preço do produto mais barato.
148+
Faça um programa que leia o nome e o preço de vários produtos. A cada produto cadastrado o programa deve perguntar se o usuário deseja cadastras mais algum item. Ao final, mostre: o total gasto; quantos produtos custam mais de 500 reais; e qual é o nome e preço do produto mais barato.
149149

150150

151151
### Exercício 37
152-
Faça um programa que simule o funcionamento de um caixa eletrônico. Primeiro pergunte ao usuário qual o valor do saque e depois informe quantas cédulas de cada valor serão entregues.
152+
Faça um programa que simule o funcionamento de um caixa eletrônico. Primeiro peça para o usuário digitar um valor de saque e, em seguida, calcule o menor número de notas possíveis no qual o valor pode ser decomposto. As notas consideradas são de 50, 20, 10 e 1. Ao final, informe quantas cédulas de cada valor serão entregues.
153153

154154

155155
### Exercício 38
156156
Faça um programa que encontre as raízes de uma equação do segundo grau. Caso o discriminante seja igual a zero, exiba uma mensagem dizendo que a equação possui apenas uma raiz real, e caso o discriminante seja menor que zero, exiba uma mensagem dizendo que a equação não possui raízes reais.
157157

158158

159159
### Exercício 39
160-
Faça um programa que peça ao usuário que digite um número inteiro qualquer e seja capaz de dizer se esse número possui dígitos adjacentes iguais. Por exemplo: o número 123<strong>44</strong>56789 é um número com dígitos adjacentes iguais.
160+
Faça um programa que leia um número inteiro qualquer digitado pelo usuário e seja capaz de dizer se esse número possui dígitos adjacentes iguais. Por exemplo: o número 123**44**56789 é um número com dígitos adjacentes iguais.
161161

162162

163163
### Exercício 40
164-
Faça um programa que peça que o usuário digite um número inteiro qualquer, depois calcule e exiba a soma dos dígitos desse número.
164+
Faça um programa que peça que o usuário digite um número inteiro qualquer. A seguir, calcule e exiba a soma dos dígitos desse número.
165165

166166

167167
### Exercício 41
168168
Faça um programa que peça para o usuário ir digitando alguns números e os insira em uma lista. Essa lista não pode conter valores repetidos e o programa só finaliza quando o usuário digitar o valor 0. Ao final, exiba os valores digitados em ordem crescente.
169169

170170

171171
### Exercício 42
172-
Faça um programa que peça para o usuário digitar alguns números e os insira automaticamente em uma lista de ordem crescente já na posição correta. É o usuário quem deve determinar o número de valores que ele deseja inserir. Ao final, exiba os valores da lista já em ordem crescente. Não pode fazer uso do método <strong>sort()</strong>.
172+
Faça um programa que peça para o usuário digitar alguns números e os insira automaticamente em uma lista de ordem crescente já na posição correta. É o usuário quem deve determinar o número de valores que ele deseja inserir. Ao final, exiba os valores da lista já em ordem crescente. Não pode fazer uso do método **sort()**.
173173

174174

175175
### Exercício 43
176-
Faça um programa que leia diversos números digitados pelo usuário e cadastre-os em <strong>uma única</strong> lista que mantenha separados os valores pares e ímpares. Ao final, exiba os valores pares e ímpares em ordem crescente.
176+
Faça um programa que leia diversos números digitados pelo usuário e cadastre-os em **uma única** lista que mantenha separados os valores pares e ímpares. Ao final, exiba os valores pares e ímpares em ordem crescente.
177177

178178

179179
### Exercício 44
@@ -185,7 +185,7 @@ Faça um programa que peça para o usuário digitar alguns números e seja capaz
185185

186186

187187
### Exercício 46
188-
Faça um programa que leia nome e peso de várias pessoas guardando tudo em <strong>apenas uma</strong> lista. No final, exiba: quantas pessoas foram cadastradas; o menor e o maior peso registrado; as pessoas com mais de 90kg; as pessoas com menos de 60kg.
188+
Faça um programa que leia nome e peso de várias pessoas guardando tudo em **apenas uma** lista. No final, exiba: quantas pessoas foram cadastradas; o menor e o maior peso registrado; as pessoas com mais de 90kg; as pessoas com menos de 60kg.
189189

190190

191191
### Exercício 47
@@ -197,7 +197,7 @@ Faça um programa que ajude um jogador da Mega-Sena a criar palpites. O programa
197197

198198

199199
### Exercício 49
200-
Faça um programa que simule o comportamento de um boletim escolar. O programa deve ler o nome e duas notas de alguns alunos que o usuário quiser cadastrar e guardar tudo em uma <strong>única lista</strong> composta. No final, mostre um boletim contendo a média de cada aluno e permita que o usuário possa ver as notas 1 e 2 de cada um individualmente.
200+
Faça um programa que simule o comportamento de um boletim escolar. O programa deve ler o nome e duas notas de alguns alunos que o usuário quiser cadastrar e guardar tudo em uma **única lista** composta. No final, mostre um boletim contendo a média de cada aluno e permita que o usuário possa ver as notas 1 e 2 de cada um individualmente.
201201

202202

203203
### Exercício 50

0 commit comments

Comments
 (0)