0
respostas

[Projeto] Exercícios

Desafio: Hora da prática


Estas são minhas resoluções dos exercícios propostos, após verificar a resolução do instrutor e realizar qualquer correção necessária, mantendo minha linha de raciocínio e prática de programação.

Qualquer sugestão ou dúvidas, fiquem a vontade para compartilhar.

Aquecimento


Questão 1

Escreva um código para instalar a versão 3.7.1 da biblioteca matplotlib

Resposta:
!pip install matplotlib==3.7.1

Questão 2

Escreva um código para importar a biblioteca numpy com o alias np

Resposta:
import numpy as np

Questão 3

Crie um programa que lê a seguinte lista de números e escolha um número desta aleatoriamente.

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

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

from random import choice
choice(lista)

Questão 4

Crie um programa que sorteia aleatoriamente um número inteiro menor que 100.

Resposta:
from random import randrange
randrange(100)

Questão 5

Crie um programa que solicite à pessoa usuária digitar dois números inteiros e calcular a potência do 1º número elevado ao 2º.

Resposta:
base = int(input('Digite a base da potência:     '))
expo = int(input('Digite o expoente da potência: '))

from math import pow
print(f'O resultado de {base} elevado à {expo} é {pow(base, expo)}.')

Aplicando a Projetos


Questão 6

Um programa deve ser escrito para sortear uma pessoa seguidora de uma rede social para ganhar um prêmio. A lista de participantes é numerada e devemos escolher aleatoriamente um número de acordo com a quantidade de participantes.

Peça à pessoa usuária para fornecer o número de participantes do sorteio e devolva para ela o número sorteado.

Resposta:
num_participantes = int(input('Informe a quantidade de participantes do sorteio: '))

from random import randrange
print(f'O número sorteado foi {1+randrange(num_participantes)}') 
# O randrange é menor que o numero informado, portanto corrigimos acrescentando 1

Questão 7

Você recebeu uma demanda para gerar números de token para o acesso ao aplicativo de uma empresa. O token precisa ser par e variar de 1000 até 9998. Escreva um código que solicita à pessoa usuária o seu nome e gera uma mensagem junto a esse token gerado aleatoriamente:

"Olá, [nome], o seu token de acesso é [token]! Seja bem-vindo(a)!"

Resposta:
nome = str(input('Digite seu nome: '))

from random import randrange
print(f'Olá, {nome}, o seu token de acesso é {2*randrange(500, 5000)}! Seja bem-vindo(a) !') 
# Valores gerado pelo randrange são 500 =< token < 5000
# Ao multiplicar por 2 temos 1000 =< 2*token (par) < 10000

Questão 8

Para diversificar e atrair novos clientes, uma lanchonete criou um item misterioso em seu cardápio chamado "salada de frutas surpresa". Neste item, são escolhidas aleatoriamente 3 frutas de uma lista de 12 frutas para compor a salada de frutas da pessoa cliente.

Crie o código que faça essa seleção aleatória de acordo com a lista abaixo:

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

Resposta:
frutas = ['maçã', 'banana', 'uva', 'pêra', 'manga', 'coco', 'melancia', 'mamão', 'laranja', 'abacaxi', 'kiwi', 'ameixa']

from random import sample
salada = sample(frutas,3)
print(f'A salada de frutas surpresa é de: {salada[0]}, {salada[1]} e {salada[2]}')
# Verifiquei a solução do instrutor utilizando choices porém permitia repetição, Ex: coco, coco e kiwi

Questão 9

Você recebeu um desafio de calcular a raiz quadrada de uma lista de números, identificando quais resultaram em um número inteiro. A lista é a seguinte:

numeros = [2, 8, 15, 23, 91, 112, 256]

Informe no final quais números possuem raízes inteiras e seus respectivos valores.

Resposta:
numeros = [2, 8, 15, 23, 91, 112, 256]
from math import sqrt

raiz = []

for i in range(len(numeros)):
  raiz.append(sqrt(numeros[i]))
  if raiz[i] // 1 == raiz[i]:
    print(f'O número {numeros[i]} possui raiz inteira, e seu valor é {raiz[i]}')

Questão 10

Faça um programa para uma loja que vende grama para jardins. Essa loja trabalha com jardins circulares e o preço do metro quadrado da grama é de R$ 25,00. Peça à pessoa usuária o raio da área circular e devolva o valor em reais do quanto precisará pagar.

Resposta:
raio = float(input('Informe o valor do raio: '))
    
from math import pi, pow
area = pi*pow(raio, 2)

print(f'O gramado na área de {area:.2f}m² custa R$ {25*area:.2f}')