Fórum Retorno de dois valores na Função... #209794
27/01/2004
0
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.
Obs . Sei como fazer para retornar apenas se utilizar o X1 Ou X2...
Obrigado pela ajuda.
Pantoja
Curtir tópico
+ 0
Responder
Posts
27/01/2004
Beppe
Use parâmetros [b:eb773d4080]out[/b:eb773d4080].
Chama assim:
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.
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.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)