Ver Mensaje Individual
  #2  
Antiguo 08-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Reputación: 15
BrunoBsso Va por buen camino
Buenas!
Te explico:
Código Delphi [-]
If Z.ArgumentoRadianes>(2*Pi) then
  Repeat
    Z.ArgumentoRadianes-(2*Pi);
  until (Z.ArgumentoRadianes<=(2*Pi));
Z.ArgumentoRadiantes es una variable, y como tal para asignarle un valor tenes que usar la asignaciíon :=.
Z.ArgumentoRadianes:=Z.ArgumentoRadianes-(2*Pi);


El siguiente:
Código Delphi [-]
Function Ln(a:TComplejo):TComplejo; overload;
Var
  Z:TComplejo;
Begin
  Z.Modulo:=ln(a.Modulo); //<-Incompatible type for arg no1: Got Extended, expected TCOmplejo
  Z.ArgumentoRadianes:=a.ArgumentoRadianes;
  Z.ArgumentoGrados:=RadToDeg(Z.ArgumentoRadianes);
  CalcularRectangular(Z);
  Result:=Z;
end;
Tu función acepta argumentos de tipo TComplejo, y en Z.Modulo:=ln(a.Modulo); le estás pasando la variable Modulo que es un extended. Deberías pasarle el número complejo (a).

Saludos!!!!
Responder Con Cita