Retorno de dois valores na Função...

Delphi

27/01/2004

Fiz um pequeno programa de matemática. tudo tava indo bem até que resolvi fazer uma função para retornar as raizes de uma equação de segundo grau. Bem X1 := -b+Sqrt(Sqr(b)-4*a*c); e X2 := -b-Sqrt(Sqr(b)-4*a*c); como faço para essa função retornar meu X1 e X2..

Obs . Sei como fazer para retornar apenas se utilizar o X1 Ou X2...


Obrigado pela ajuda.


Pantoja

Pantoja

Curtidas 0

Respostas

Beppe

Beppe

27/01/2004

Use parâmetros [b:eb773d4080]out[/b:eb773d4080].

procedure Raizes(A, B, C: Integer; out X1, X2: Integer);
begin
...
  X1 := ...;
  X2 := ...
end;


Chama assim:
var
  X1, X2: Integer;
begin
  Raizes(2, 1, 4, X1, X2);
  // quando chegar neste ponto, X1 contém X1 e X2 contém X2
  // embora você não precise usar o mesmo nome para as variáveis
end;


Para um parâmetro [b:eb773d4080]out[/b:eb773d4080], como o [b:eb773d4080]var[/b:eb773d4080], você não pode passar uma constante, precisa ser uma variável. A diferença entre [b:eb773d4080]out[/b:eb773d4080] e [b:eb773d4080]var[/b:eb773d4080] é que [b:eb773d4080]out[/b:eb773d4080] desconsidera o valor inicial da variável.


GOSTEI 0
POSTAR