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]
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)!"
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"]
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}')