Ir ao conteúdo

lunalovegood

Membro Pleno
  • Posts

    33
  • Cadastrado em

  • Última visita

  1. Consegui "resolver" dessa maneira, mas dessa forma o método __str__ fica quase inútil, pois não imprime mais os resultados da soma e da multiplicação. Continuo sem entender a dúvida anterior. class Complexo: def __init__(self, a, b): self.real = a self.imag = b print(self) def soma(self, a, b, c, d): print ("Soma = %2.f + %2.fi"%(a+c, b+d)) def mult(self, a, b, c, d): print ("Multiplicação = %2.f + %2.fi"%(a*c - b*d, a*d + b*c)) def __str__(self): s = "%2.f + %2.fi"%(self.real, self.imag) return s print ("Complexo 1 = ", end="") c1 = Complexo(2, 3) print ("Complexo 2 = ", end="") c2 = Complexo(4, 5) c1.soma(c1.real, c1.imag, c2.real, c2.imag) c1.mult(c1.real, c1.imag, c2.real, c2.imag)
  2. Boa tarde, fiz esse código que opera números complexos usando Python, estou começando a usar POO e surgiu uma dúvida: até a parte da soma ele calcula e imprime tudo corretamente, mas quando chega na parte da multiplicação os valores de c1.real e c1.imag estão mudados. Ao invés de continuarem com os valores 2 e 3, eles passam a ser o resultado calculado na soma, 6 e 8, isso faz com que a multiplicação dê -16 + 62i ao invés de -7 + 22i. Colocar (c1.real, c1.imag) = (2, 3) antes de calcular a multiplicação foi a solução que encontrei, mas não entendo porque os valores dessas duas variáveis foram trocados pelos de soma. Como consertar isso sem ser pela gambiarra que fiz? Obrigada. class Complexo: def __init__(self, a, b): self.real = a self.imag = b print(self) def soma(self, a, b, c, d): self.real = a+c self.imag = b+d return (self) def mult(self, a, b, c, d): self.real = ((a*c) - (b*d)) self.imag = ((a*d) + (b*c)) return (self) def __str__(self): s = "%2.f + %2.fi"%(self.real, self.imag) return s print ("Complexo 1 = ", end="") c1 = Complexo(2, 3) print ("Complexo 2 = ", end="") c2 = Complexo(4, 5) print ("Soma =", c1.soma(c1.real, c1.imag, c2.real, c2.imag)) #(c1.real, c1.imag) = (2, 3) print ("Multiplicação =", c1.mult(c1.real, c1.imag, c2.real, c2.imag))

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!