Exercícios Resolvidos de Módulo Random

Ver Teoria

Enunciado

Escreva um programa que receba o nome de uma sequência de times de futebol e exiba uma as partidas de um torneio com os times, de forma que:

  • As partidas devem ser geradas de forma aleatória.
  • O número de times digitados deve ser par.
  • O programa deve pedir nomes até que seja digitado “fim”

Exemplo:

Entrada:

Digite um time: Flamengo

Digite um time: Vasco

Digite um time: Fluminense

Digite um time: Botafogo

Digite um time: Bangu 2

Digite um time: Barcelona

Digite um time: fim

Barcelona x Botafogo

Saída:

Fluminense x Vasco

Bangu 2 x Flamengo

Passo 1

E aí, vingador!!! Bora resolver esse exercício na força do ódio?!

A ideia é perguntar pro usuário nomes de times pro campeonato até que seja dita a palavra “fim”. Então a gente não sabe quantos times vão ser… Nessa situação, é uma boa ideia a gente usar uma lista pra armazenar o nomes dos times e uma estrutura de repetição while. Tipo assim:

E pronto! Assim, o programa vai perguntar e adicionar na lista os nomes dos times… Agora, fora do laço de repetição, precisamos checar se um número par de times foi adicionado. E pra isso a gente pode verificar se o resto da divisão por dois da quantidade de times na lista é igual a zero. Se liga:

E já vamos preencher com uma mensagem caso seja ímpar…

E pronto! Só falta a gente ordenar o campeonato agora...

Passo 2

Mas como a gente poderia fazer pra ordenar aleatoriamente o campeonato?!

Primeiramente, vamos precisar importar o módulo random pra ter acesso a algumas funções de aleatoriedade. Segundamente, a gente até poderia ir pegando itens aleatórios da lista,m as tem uma forma mais fácil! Vamos usar o random.shuffle().

Essa função recebe e EDITA uma lista, ordenando-a de forma aleatória. Aí, a gente pode dizer que os times jogaram com o time do lado, já que estão embaralhados… hahaha saca só

Enquanto tiver times na lista, a gente exibe uma partida entre os dois primeiros, afinal, eles foram escolhidos aleatoriamente pra ser os primeiros… E depois, a gente atualiza a lista pra deletar esses dois primeiros que usamos, sacou?!

E pronto! Finalizamos o exercício. Te espero no próximo, tá? Valeuuu

Resposta