1. Faça um programa para gerar automaticamente números entre 0 e 99 de uma cartela de bingo. Sabendo que cada cartela deverá conter 5 linhas de 5 números, gere estes dados de modo a não ter números repetidos dentro das cartelas. O programa deve exibir na tela a cartela gerada.

Passo 1

O enunciado pede um programa que gere uma cartela de bingo com 5 linhas e 5 colunas, contendo números entre 0 e 99 sem repetição. Vamos usar conceitos de geração de números aleatórios, vetores/listas, verificação de duplicatas e estrutura de matriz.

Passo 2

Vamos criar uma lista (ou vetor) que acumule números aleatórios únicos. Sempre que um novo número for gerado, vamos checar se ele já não está na lista antes de adicioná-lo.
Implementamos um laço que repete até termos exatamente 25 números únicos. A cada iteração, geramos um número inteiro aleatório entre 0 e 99 e só o aceitamos se ele ainda não estiver na lista.

Passo 3

Com a lista de 25 números preenchida, convertemos essa lista numa matriz 5×5. Para isso, basta fatiar a lista de 5 em 5 elementos formando cada linha.

Passo 4

Por fim, exibimos a matriz na tela linha a linha, formatando cada número para alinhar em colunas de largura fixa (por exemplo, 2 dígitos).
Testamos o programa executando-o para garantir que apareça uma cartela 5×5 com todos os números entre 0 e 99 e sem repetições em nenhuma posição.

Resposta

import random
def gerar_cartela():
# Lista que vai guardar os 25 números únicos
numeros = []
while len(numeros) < 25:
num = random.randint(0, 99)
if num not in numeros:
numeros.append(num)
# Converte em uma matriz 5x5
cartela = [numeros[i*5:(i+1)*5] for i in range(5)]
return cartela
def exibir_cartela(cartela):
for linha in cartela:
# Cada número com largura 2 e alinhado à direita
print(" “.join(f”{n:2d}" for n in linha))
if name == “main”:
cartela = gerar_cartela()
exibir_cartela(cartela)

Exercícios relacionados