Exercício 2: Criar um programa capaz de criar números aleatórios que sejam pertencentes a cada um dos conjuntos descritos abaixo:
(A)
.
Para cada um dos conjuntos crie uma função espećfica (criaConj1, criaConj2, criaConj3, respectivamente).
(A)
Para cada um dos conjuntos crie uma função espećfica (criaConj1, criaConj2, criaConj3, respectivamente).
Passo 1
O exercício pede para criar uma função chamada criaConj1 que gere um número aleatório pertencente ao conjunto A = {2,4,6,8,10}. O conteúdo envolve geração de números aleatórios e seleção uniforme em uma lista fixa.
Passo 2
Para escolher aleatoriamente um elemento de um conjunto finito, podemos armazenar os valores em uma lista (ou vetor) e usar uma função que gere um índice inteiro aleatório entre 0 e o tamanho da lista menos 1. Esse índice uniforme garante que cada elemento do conjunto tenha a mesma probabilidade de ser escolhido.
Passo 3
Em Python, o módulo random já fornece a função choice, que recebe uma lista e retorna um elemento aleatório. Então, basta definir a lista conj1 = [2,4,6,8,10] e chamar random.choice(conj1) dentro de criaConj1.
Passo 4
Se quisermos implementar sem usar random.choice, podemos usar random.randint para gerar um índice aleatório. Por exemplo, idx = random.randint(0, len(conj1) - 1) e então retornar conj1[idx]. Isso faz exatamente a mesma seleção uniforme.
Passo 5
Para testar, podemos chamar criaConj1 várias vezes e imprimir o resultado, verificando que sempre sai um dos valores do conjunto A.
Resposta
import random
def criaConj1():
conj1 = [2, 4, 6, 8, 10]
return random.choice(conj1)
conj1 = [2, 4, 6, 8, 10]
return random.choice(conj1)
Exemplo de uso
if name == “main”:
for _ in range(5):
print(criaConj1())
for _ in range(5):
print(criaConj1())