Construa um algoritmo que sorteie 3 números inteiros (não repetidos) entre 5 e 30. Posteriormente apresente o maior número sorteado. Obs. O sorteio deverá ser uma função onde os parâmetros serão os 3 valores e a verificação do maior número também deverá ser uma função.

Passo 1

Beleza, vamos lá! O exercício pede para a gente criar um algoritmo que sorteie 3 números inteiros únicos entre 5 e 30 e, depois, mostrar qual desses números é o maior. A gente vai usar conceitos de funções para organizar melhor o código: uma função para sortear os números e outra para verificar qual é o maior. Vamos precisar usar aleatoriedade para o sorteio e lógica de comparação para encontrar o maior número.

Passo 2

Primeiro, vamos criar a função que vai sortear os 3 números. Para garantir que os números não se repitam, vamos sortear um de cada vez e verificar se ele já foi sorteado antes. Se já tiver, sorteamos de novo até conseguir um número único.
import random

def sortear_numeros():
    numeros_sorteados = []
    while len(numeros_sorteados) < 3:
        num = random.randint(5, 30)
        if num not in numeros_sorteados:
            numeros_sorteados.append(num)
    return numeros_sorteados
Aqui usamos a função random.randint(5, 30) para sortear números entre 5 e 30 e garantimos que não se repitam verificando se já estão na lista numeros_sorteados.

Passo 3

Agora, vamos criar a função que vai receber os 3 números sorteados e identificar qual é o maior. A ideia é comparar os números entre si.
def encontrar_maior(a, b, c):
    maior = a
    if b > maior:
        maior = b
    if c > maior:
        maior = c
    return maior
Nesta função, começamos assumindo que a é o maior. Depois, comparamos b e c com maior e atualizamos se encontrarmos um número maior.

Passo 4

Vamos juntar tudo no algoritmo principal. Primeiro, chamamos a função para sortear os números, depois usamos a função para encontrar o maior número e, por fim, mostramos tudo na tela.
def main():
    numeros = sortear_numeros()
    print(f"Números sorteados: {numeros}")
    maior_numero = encontrar_maior(numeros[0], numeros[1], numeros[2])
    print(f"O maior número sorteado é: {maior_numero}")

if __name__ == "__main__":
    main()
Aqui, main() é a função principal que coordena tudo. Usamos print para mostrar os números sorteados e o maior número.

Resposta

Prontinho! Ao rodar o algoritmo, ele vai sortear 3 números únicos entre 5 e 30 e mostrar qual deles é o maior. Por exemplo:
Números sorteados: [12, 25, 7]
O maior número sorteado é: 25

Exercícios relacionados

Construa um algoritmo que retorne a parte decimal de um valor real (valores após a vírgula), onde o valor real será passado como parâmetro.
Construa um algoritmo que solicite uma frase (mínimo 10 e máximo 50 caracteres). Posteriormente, retorne (através de funções) a quantidade de vogais e quantidade de consoantes da frase.
Utilizando pseudocódigo, desenvolva uma solução que apresente o fatorial de todos os números entre 0 e 10. Utilize uma função para retornar o fatorial de cada valor.
Construa uma função que retorne se uma sequencia de caracteres (string) passado como parâmetro possui ou não apenas caracteres numéricos.