Enviar um café pro programador

Função que mostra Maior e Menor número em Python

Neste tutorial de nosso Curso Python Progressivo, vamos resolver uma questão da lista de exercícios sobre funções.

Leia também:

Como achar o maior número

Vamos resolver o seguinte exercício:
"Faça um programa que recebe três números do usuário, e identifica o maior através de uma função e o menor número através de outra função."

Vamos lá.
Nossa função maior() tem três parâmetros: x, y e z, que são os números que iremos passar como argumento.

Dentro da função, definimos a variável max que recebe o valor de x.
Vamos assumir que é o valor máximo.

Comparamos, via Teste incondicional IF, max com y.
Se y for maior que max, fazemos max receber o valor de y.
Veja que max vai armazenar o maior valor, dentre x e y.

Em seguida, fazemos a mesma coisa, comparando max com z.
E prontinho, max vai ter o maior valor dentre x, y e z.

Agora é só dar um return.

Descobrir o menor número

A lógica é absolutamente a mesma da anterior.
Vamos usar uma variável min que vai ser encarregada de armazenar o menor valor.

Inicialmente, fazemos receber o valor de x. Depois comparamos min com y e depois com z.
Se forem menor que min, o valor de min recebe esse novo valor, pois é menor.

Por fim, basta dar um return min na função menor().

Nosso código fica:
def maior(x,y,z):
    max = x

    if y > max:
        max = y
    if z > max:
        max = z

    return max

def menor(x,y,z):
    min = x

    if y < min:
        min = y
    if z < min:
        min = z

    return min

def menu():
    x = int(input('Primeiro numero: '))
    y = int(input('Segundo numero : '))
    z = int(input('Terceiro: numero: '))

    print("Maior: ", maior(x,y,z))
    print("Menor: ", menor(x,y,z))
    print()
    
while True:
    menu()


14 comentários:

  1. Valeu ! , Não tava consiguindo raciocinar direito aqui kkkkk

    ResponderExcluir
    Respostas
    1. x = int(input('Informe o 1º número:'))
      y = int(input('Informe o 2 º número:'))
      z = int(input('Informe o 3 º número: '))
      maior = x
      menor = x
      if x>y:
      maior =x
      if y>x:
      maior =y
      if z>y or z>x:
      maior=z
      if x<y:
      menor=x
      if y<x:
      menor=y

      if z<y or z<x:
      menor=z
      print(f'Maior valor é {maior}')
      print(f'Menor valor é {menor}')

      Excluir
  2. maior = menor = 0
    for n in range(1,4):
    num = int(input(f"{n}º número: "))
    if n == 1:
    maior = menor = num
    if num > maior:
    maior = num
    if num < menor:
    menor = num
    print("O número maior é:",maior)
    print("O número menor é:",menor)

    ResponderExcluir
  3. e como eu faria com while, não sei quantos o usuario quer digitar
    ex, o usuario digita +30x um numero , e desses 30 quero saber o maior e menor

    ResponderExcluir
    Respostas
    1. Este comentário foi removido por um administrador do blog.

      Excluir
  4. #olá... eu fiz desse jeito...
    n1 = int(input('Digite um número: '))
    n2 = int(input('Outro número: '))
    n3 = int(input('Mais um número: '))
    print('')
    print('Analisando os números...')
    print('')
    if n1 > n2 and n3:
    maior = n1
    if n2 > n1 and n3:
    maior = n2
    if n3 > n1 and n2:
    maior = n3
    elif n1 < n2 and n3:
    menor = n1
    elif n2 < n1 and n3:
    menor = n2
    elif n3 < n1 and n2:
    menor = n3
    print(f'O maior número é {maior}.')
    print('')
    print(f'E o menor número é {menor}.')

    ResponderExcluir
  5. def maior(a,b,c):
    m = (a,b,c)
    return max(m)
    def menor(a,b,c):
    m = (a,b,c)
    return min(m)
    a = int(input('Digite um número: '))
    b = int(input('Digite um número: '))
    c = int(input('Digite um número: '))
    print(f'O maior valor é {maior(a,b,c)}.')
    print(f'O menor valor é {menor(a,b,c)}.')

    ResponderExcluir
  6. def maior(a,b,c):
    m = (a,b,c)
    return max(m)
    def menor(a,b,c):
    m = (a,b,c)
    return min(m)
    a = int(input('Digite um número: '))
    b = int(input('Digite um número: '))
    c = int(input('Digite um número: '))
    print(f'O maior valor é {maior(a,b,c)}.')
    print(f'O menor valor é {menor(a,b,c)}.')

    ResponderExcluir
  7. x = int(input('Primeiro Valor: '))
    y = int(input('Segundo valor: '))
    z = int(input('Terceiro valor: '))

    def maior(x,y,z):
    a = max(x,y,z)
    return a

    def menor(x,y,z):
    b = min(x,y,z)
    return b

    print(maior(x,y,z))
    print(menor(x,y,z))

    ResponderExcluir
  8. def maior(x,y,z):
    max=x
    if y>x:
    max=y
    if z>y:
    max=z

    def menor(x,y,z):
    min=x
    if y<x:
    min=y
    if z<y:
    min=z
    def menu():
    x=int(input('Adicione o valor de x: '))
    y=int(input('Adicione o valor de y: '))
    z=int(input('Adicione o valor de z: '))

    print('Maior: ', {max(x,y,z)})
    print('Menor: ', {min(x,y,z)})
    print()

    while True:
    menu()

    ResponderExcluir
  9. n1 = int (input('Digite um valor: '))
    n2 = int (input('Digite um valor: '))
    n3 = int (input('Digite um valor: '))

    l = [n1, n2, n3]

    print('O maior numero é {}'.format(max(l)))
    print('O menor numero é {}'.format(min(l)))

    ResponderExcluir