Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   encontrar caracter en string (https://www.clubdelphi.com/foros/showthread.php?t=47976)

emeceuy 12-09-2007 15:06:18

encontrar caracter en string
 
hola a todos...

estoy trabajando con numeros complejos y siempre manejo la parte real e imaginaria como reales (en un record)... pero cuando quiero adquierir esos dos reales desde un complejo en formato cartesiano almacenado en un string (a +bi) se me complica un poco...

o sea, tengo que extraer del string: "a + bi" a y b, que son reales... lo podria hacer con un loop que recorra el string y que detecte al signo de "+" o que detecte la unidad imaginaria "i" y de ahi hago un copy y extraigo a los numeros a y b...

no tengo dudas que eso del loop funciona, pero existe algo mas eficiente para encontrar un caracter determinado en un string? y que me devuelva el indice de su posicion (para despues hacer el copy)?
o se les ocurre otra forma mejor de obtener las coordenadas del complejo?

salu2 y muchisimas gracias...

Marcelo

jhonny 12-09-2007 15:08:36

La función Pos ;).

emeceuy 13-09-2007 01:28:19

buenisimo !!! sabía que era algo facil, pero no me acordaba !!! ;)

ya de paso pregunto otra duda...

se puede hacer que los parametros de una funcion no sean todos necesarios?

o sea por ej:

function MyFunction(a,b,c:real):real;

si declaro la funcion asi, tengo que darle como entrada esos tres parametros cuando la llame, pero se podría definir de alguna forma de manera que "c" por ejemplo no fuera necesario? se que se puede hacer algo con overload, pero no se puede de otra forma?

salu2 y gracias !

dec 13-09-2007 01:31:59

Hola,

Algo así se puede:

Código Delphi [-]
function Foo(a,b: real; c: real = 0): real;
begin
  {...}
end;

Es decir, dar a un parámetro un valor "predeterminado" de manera que pasar o no otro valor en dicho parámetro sea opcional.

emeceuy 13-09-2007 01:35:35

decir "GENIAL" es poco !!! muchisimas gracias !!! además que velocidad para responderme !!! ;)

gracias !


La franja horaria es GMT +2. Ahora son las 14:33:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi