1
resposta

[Projeto] Desafio

1. Instalar matplotlib 3.7.1

Execute este comando no terminal:

pip install matplotlib==3.7.1

2. Importar numpy com alias np

import numpy as np

Bibliotecas necessárias

import random
from math import pow, sqrt, pi

3. Escolher um número aleatório da lista

lista = [8, 12, 54, 23, 43, 1, 90, 87, 105, 77]

numero_escolhido = random.choice(lista)

print("3)")
print("Número escolhido:", numero_escolhido)
print("-" * 40)

4. Sortear um número inteiro menor que 100

numero = random.randrange(100)

print("4)")
print("Número sorteado:", numero)
print("-" * 40)

5. Potência entre dois números

print("5)")
num1 = int(input("Digite o primeiro número: "))
num2 = int(input("Digite o segundo número: "))

resultado = pow(num1, num2)

print(f"Resultado: {resultado}")
print("-" * 40)

6. Sorteio de participante

print("6)")
participantes = int(input("Digite a quantidade de participantes: "))

sorteado = random.randrange(1, participantes + 1)

print(f"O número sorteado foi: {sorteado}")
print("-" * 40)

7. Gerador de token

print("7)")
nome = input("Digite seu nome: ")

token = random.randrange(1000, 9999, 2)

print(f"Olá, {nome}, o seu token de acesso é {token}! Seja bem-vindo(a)!")
print("-" * 40)

8. Salada de frutas surpresa

print("8)")
frutas = [
"maçã", "banana", "uva", "pêra",
"manga", "coco", "melancia", "mamão",
"laranja", "abacaxi", "kiwi", "ameixa"
]

salada = random.sample(frutas, 3)

print("Frutas sorteadas:", salada)
print("-" * 40)

9. Raízes quadradas inteiras

print("9)")
numeros = [2, 8, 15, 23, 91, 112, 256]

for numero in numeros:
raiz = sqrt(numero)

if raiz // 1 == raiz:
    print(f"{numero} possui raiz inteira: {int(raiz)}")

print("-" * 40)

10. Cálculo do valor da grama para jardim circular

print("10)")
raio = float(input("Digite o raio do jardim: "))

area = pi * pow(raio, 2)

valor = area * 25

print(f"Área do jardim: {area:.2f} m²")
print(f"Valor a pagar: R$ {valor:.2f}")

1 resposta

Olá, Micael. Como vai?

Parabéns por concluir o desafio! O seu código está muito bem estruturado e você demonstrou domínio no uso das bibliotecas random, math e numpy. Resolver esses exercícios práticos é a melhor forma de fixar como importar e utilizar módulos externos para facilitar cálculos e automações.

Gostaria de destacar alguns pontos técnicos interessantes sobre a sua resolução e dar umas sugestões de boas práticas:

**Trabalhando com a biblioteca random**

No item 7, você utilizou o random.randrange(1000, 9999, 2). Essa foi uma sacada muito boa para garantir que o token seja sempre um número par! O terceiro parâmetro (step) é uma ferramenta poderosa que muitas pessoas esquecem de utilizar.

Otimização no item 9: Verificação de Raiz Inteira

Para verificar se um número tem raiz quadrada inteira, você utilizou raiz // 1 == raiz. Essa lógica funciona perfeitamente! Uma alternativa muito comum em Python é utilizar o método .is_integer() que os números do tipo float possuem. Ficaria assim:

if raiz.is_integer():
    print(f"{numero} possui raiz inteira: {int(raiz)}")

Boas Práticas na Importação

No item 2, você importou funções específicas da biblioteca math. Isso é excelente para economizar memória e deixar o código mais limpo. No entanto, no item 10, ao calcular a área do jardim, você usou pi * pow(raio, 2).

Uma curiosidade: em Python, para elevar um número ao quadrado, você também pode usar o operador de potência ``, que é nativo da linguagem e muitas vezes mais rápido que chamar uma função de biblioteca:

area = pi * (raio ** 2)

Além disso, notei que você importou o numpy e o matplotlib conforme solicitado no início do desafio. Embora não tenha usado o numpy nos cálculos seguintes, essas bibliotecas serão suas maiores aliadas quando você começar a trabalhar com grandes volumes de dados e visualizações gráficas mais complexas.

Continue com esse foco nos estudos e na organização do código!

Espero que possa ter lhe ajudado!