Use a função randint da biblioteca random, como explicado em sala de aula, para gerar 20 números aleatórios de 0 a 50 . Sempre que um múltiplo de 5 for gerado, o valor e sua posição deverão ser impressos na tela.

Passo 1

O que o enunciado pede e quais informações ele dá:
  • Gerar 20 números aleatórios no intervalo de 0 a 50 (inclusive).
  • Sempre que um múltiplo de 5 for gerado, imprimir na tela o valor e a sua posição na sequência.
  • Não foi especificado explicitamente se a posição começa em 0 ou em 1; por convenção aqui vou usar a posição iniciando em 1 (ou seja, o primeiro número gerado tem posição 1, o segundo tem posição 2, etc.).

Passo 2

Conceitos e funções que vamos usar (explicados de forma didática):
  • A função randint do módulo random:
    • Em Python, random.randint(a, b) retorna um inteiro aleatório entre a e b, inclusive. Ou seja, random.randint(0, 50) pode produzir qualquer inteiro de 0 até 50.
  • Repetição (for) para gerar 20 números:
    • Usamos um laço for que percorre 20 vezes para gerar exatamente 20 números.
    • Para acompanhar a posição, podemos usar range(1, 21) para gerar índices 1,2,\dots,20.
  • Teste de “múltiplo de 5”:
    • Um número n é múltiplo de 5 quando existe um inteiro k tal que n = 5k.
    • Computacionalmente, verificamos isso testando se o resto da divisão de n por 5 é zero. Em Python usamos o operador % (módulo): o teste é n % 5 == 0. Se for True, então n é múltiplo de 5.
  • Impressão formatada:
    • Vamos imprimir uma linha com a posição e o valor sempre que o teste de múltiplo for satisfeito. Exemplo de saída: Posição 3: valor 25.

Passo 3

Como montar o algoritmo passo a passo (estratégia clara que você pode aplicar na prova):
  1. Importar o módulo random.
  2. Fazer um laço que itere 20 vezes, usando índices de 1 a 20 para as posições.
  3. Em cada iteração, chamar random.randint(0, 50) para obter um número aleatório.
  4. Testar se o número é múltiplo de 5 usando n % 5 == 0.
  5. Se for múltiplo, imprimir a posição e o valor.

Passo 4

Explicação detalhada de cada linha do código (linha a linha), para você entender e repetir na prova:
  • import random — importa a biblioteca padrão que tem a função randint.
  • for pos in range(1, 21): — cria um laço que repete 20 vezes; pos assume os valores 1 a 20, representando a posição do número gerado.
  • n = random.randint(0, 50) — gera um inteiro aleatório entre 0 e 50 (inclusive) e guarda em n.
  • if n % 5 == 0: — verifica se o resto da divisão de n por 5 é zero; se for, n é múltiplo de 5.
  • print(f"Posição {pos}: valor {n}") — se a condição acima for verdadeira, imprime a posição e o valor formatados.
Dica prática: se quiser resultados reproduzíveis (útil para testar), defina uma semente antes de gerar os números com random.seed(algum_inteiro). Não faça isso na prova a menos que peçam exatamente a mesma sequência.

Passo 5

Código final pronto para rodar (copie e cole no seu interpretador Python):
import random

for pos in range(1, 21):
    n = random.randint(0, 50)
    if n % 5 == 0:
        print(f"Posição {pos}: valor {n}")

Passo 6

O que esperar ao rodar:
  • O programa não imprime nada quando o número gerado não é múltiplo de 5.
  • A cada múltiplo de 5 gerado aparecerá uma linha parecida com Posição 7: valor 40.
  • O número de linhas impressas varia a cada execução, pois os números são aleatórios.

Resposta

import random

for pos in range(1, 21):
    n = random.randint(0, 50)
    if n % 5 == 0:
        print(f"Posição {pos}: valor {n}")

Exercícios relacionados