Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Faça como eu fiz: calculadora com lambda

Olá, colegas!

Crie um programa usando funções lambda que receba dois números e um operador matemático escolhido pelo usuário (+, -, * ou /) e exiba o resultado correspondente.

Entrada:

soma = lambda a, b: a + b
subtracao = lambda a, b: a - b
multiplicacao = lambda a, b: a * b
divisao = lambda a, b: a / b if b != 0 else "Erro: Divisão por zero"
a = float(input("Digite o primeiro número: "))
b = float(input("Digite o segundo número: "))
operacao = input("Escolha a operação (+, -, *, /, ): ")
if operacao == "+":
  print(f"O resultado é: {soma(a, b)}")
elif operacao == "-":
  print(f"O resultado é: {subtracao(a,b)}")
elif operacao == "*":
  print(f"O resultado é: {multiplicacao(a,b)}")
elif operacao == "/":
  print(f"O resultado é: {divisao(a,b)}")
else:
  print("Operação inválida")

Saída:

Digite o primeiro número: 10
Digite o segundo número: 5
Escolha a operação (+, -, *, /, ): +
O resultado é: 15.0

1 resposta

Oi, Vanelice. Tudo bem com você?

Sua solução com funções lambda para a calculadora está funcionando muito bem. Você aproveitou corretamente a sintaxe das funções lambda para criar operações matemáticas de forma concisa, e ainda incluiu uma verificação inteligente de divisão por zero, o que torna o programa mais robusto. A estrutura com if e elif para selecionar a operação é clara e fácil de seguir, permitindo que o usuário escolha exatamente qual cálculo deseja fazer.

O uso de float para os números de entrada foi uma boa decisão, pois permite trabalhar com valores decimais. Se um usuário digitasse 10.5 e 2.5, sua calculadora funcionaria perfeitamente. A formatação com f-string deixa o resultado legível. Uma dica interessante seria considerar usar um dicionário para mapear as operações, o que simplificaria o código e o tornaria ainda mais elegante, especialmente se o programa crescesse para incluir mais operações no futuro.

Parabéns por compartilhar uma solução prática e bem implementada. Continue trazendo seus projetos ao fórum, estamos aqui para acompanhar seu desenvolvimento.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!