Ir para conteúdo
Fórum Script Brasil
  • 0

Desenvolvimento de Calculadora


jere

Pergunta

Pessoal, bom dia!
Tudo bom com vocês?
 
Estou tentando desenvolver uma calculadora como parte de exercício de um curso online, no entanto não estou entendendo onde estou errando, logo abaixo está o código.
 
Erros:
1- Soma : Todas as somas dão 45.
 
2- Subtração: TypeError: unsupported operand type(s) for -: 'str' and 'str'
 
3- Multiplicação: TypeError: can't multiply sequence by non-int of type 'str'
 
4- Divisão: TypeError: unsupported operand type(s) for /: 'str' and 'str'
 
 
Onde estou errando ?
 
Operacao = input ("Digite o numero da operação que você deseja 1-soma  2-subtracao 3-multiplicacao 4-divisao:    ")
num1 = input ("Digite o primeiro valor:   ")
num2 = input ("Digite o segundo valor:     ")
    
    
if Operacao == "1":
    resultado = num1 + num2
            
if Operacao == "2":
    resultado = num1 - num2
        
     
if Operacao == "3": 
    resultado = num1 * num2
        
 
if Operacao == "4":
    resultado = num1 / num2
    
print (resultado)
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

vou dar uma dica matadora para quem esta começando a aprender python, que é usar type, dir e print 

var = input('Entre um numero: ')
print('classe :', type(var), '', sep='\n')
print('metodos :', *dir(var), sep='\n')

se você rodar estas tres linhas vai ver, que a saida do input é classe str, e nos metodos vai ver __add__ que é para soma, e __mul__(não funciona para str e str) que é para multiplicação, mas não vai achar __sub__ nem __div__, por isso os erros.

 

a solução é bem facil, vc converte a saida do input com int ou float

Link para o comentário
Compartilhar em outros sites

  • 0

Operacao = input ("Digite o numero da operação que você deseja 1-soma  2-subtracao 3-multiplicao 4-divisao:    ")
num1 = input ("Digite o primeiro valor:   ")
num2 = input ("Digite o segundo valor:     ")
    
    
if Operacao == "1":
    resultado = float(num1) + float(num2)
            
if Operacao == "2":
    resultado = float(num1) - float(num2)
        
     
if Operacao == "3": 
    resultado = float(num1) * float(num2)
        
 
if Operacao == "4":
    resultado = float(num1) / float(num2)
    
print (resultado)

 

#Deu certo!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...