J'ai un formulaire -j(a*x + b*x)
où j est un nombre complexe. Quand je ne me trompe pas, -j
est défini comme std::complex<double> j(0,-1)
. Très bien, disons (a*x + b*y) = 5
. J'ai lu sur SO, il sera traduit à std::complex<double> scalarCmplx(5,0)
.Nombre complexe multiplié par Scalar
Lors de la multiplication j*scalarCmplx
cela se traduira à:
real = j.real * scalarCmplx.real = 0 * 5 = 0
imag = j.imag * scalarCmplx.imag = -1 * 0 = 0
Ainsi, dans ma compréhension, le résultat sera toujours 0
. Est-ce que quelque chose me manque?
La multiplication complexe ne fonctionne pas comme cela, il suffit de rechercher à nouveau la définition et il devrait être clair. – harold
Oh, ai-je confondu quelque chose? J'ai cherché Krantz99, ai-je raison si (-j) * 5 traduirait facilement en 'j.real * 5, j.imag * 5'? (@harold) –
Je vote pour clore cette question hors-sujet parce que c'est un malentendu sur la façon dont les nombres complexes fonctionnent, pas sur un problème de programmation. – Mat