<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3825785</guid>
        <pubDate>Mon, 16 Mar 2020 12:30:31 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3825785</link>
        <description><![CDATA[Виталь: Создать две функции не всегда хорошо.<br>
Например, деление нацело и остаток от деления вычисляются одной инструкцией процессора, потому код<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">x := a div b;</div><div class="code_line">y := a mod b;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
это глупость с точки зрения производительности если оно не будет оптимизировано компилятором.<br>
Так же и в функциях. Выше был правильный ответ, использовать record. Нафига тут объект и ООП я не знаю, простейший вариант следующий:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">type TRec = record x,y:integer; end;</div><div class="code_line">&nbsp;</div><div class="code_line">function test(a,b:integer):TRec;</div><div class="code_line">begin</div><div class="code_line">result.x=1;</div><div class="code_line">result.y=2;</div><div class="code_line">end;</div></ol></div></div></div></div>]]></description>
        <author>Виталь</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3821312</guid>
        <pubDate>Tue, 18 Feb 2020 07:09:44 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3821312</link>
        <description><![CDATA[Cfon: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=416804&view=findpost&p=3820731'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Breind10 &#064; <time class="tag-quote__quoted-time" datetime="2020-02-09T02:01:11+00:00">09.02.20, 02:01</time></span><div class='quote '>На форме кнопка Button и Label1 Label2:<br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">unit Unit2;</div><div class="code_line">&nbsp;</div><div class="code_line">interface</div><div class="code_line">&nbsp;</div><div class="code_line">uses</div><div class="code_line">&nbsp;&nbsp;Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,</div><div class="code_line">&nbsp;&nbsp;Dialogs, StdCtrls;</div><div class="code_line">&nbsp;</div><div class="code_line">type</div><div class="code_line">&nbsp;&nbsp;TForm2 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Label1: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Label2: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp; &nbsp;function d (a, b:integer):integer;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form2: TForm2;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm2.Button1Click(Sender: TObject);</div><div class="code_line">var i,i2,a,b:integer; </div><div class="code_line">begin</div><div class="code_line">a:=5;</div><div class="code_line">b:=5;</div><div class="code_line">i:=d(a,b); //ссумируем</div><div class="code_line">Label1.Caption:=IntToStr(i);//выводим &nbsp; &nbsp;d1</div><div class="code_line">&nbsp;</div><div class="code_line">i2:=d(a,b);</div><div class="code_line">Label2.Caption:=IntToStr(i2);//выводим &nbsp; &nbsp;d2</div><div class="code_line">&nbsp;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">function TForm2.d(a, b: integer): integer;</div><div class="code_line">var d1,d2: integer;</div><div class="code_line">begin</div><div class="code_line">d1:=a+b*a; //Присваиваем функции сумму переменных 1</div><div class="code_line">Result:=d1;</div><div class="code_line">&nbsp;</div><div class="code_line">//d2:=a*2+b*a; //Присваиваем функции сумму переменных 2</div><div class="code_line">//Result:=d2;</div><div class="code_line">&nbsp;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">end.</div></ol></div></div></div></div></div></div></div></div><br>
создать две функции :D]]></description>
        <author>Cfon</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820763</guid>
        <pubDate>Sun, 09 Feb 2020 14:50:47 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820763</link>
        <description><![CDATA[Breind10: <strong class='tag-b'>Gonarh</strong>, спасибо большое.]]></description>
        <author>Breind10</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820745</guid>
        <pubDate>Sun, 09 Feb 2020 09:35:18 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820745</link>
        <description><![CDATA[Gonarh: <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp;unit Unit2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;interface</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;uses</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Dialogs, StdCtrls;</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;type</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;ololo = record</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;d1:integer;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;d2:integer;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end; </div><div class="code_line">&nbsp;&nbsp; &nbsp;type</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;TForm2 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Label1: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;Label2: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;function d (a:ololo):ololo;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;var</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Form2: TForm2;</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;implementation</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;{$R *.dfm}</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure TForm2.Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp; &nbsp;var a:ololo;</div><div class="code_line">&nbsp;&nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;a.d1:=5;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;a.d2:=5;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;a:=d(a); //ссумируем</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Label1.Caption:=IntToStr(a.d1);//выводим &nbsp; &nbsp;d1</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Label2.Caption:=IntToStr(a.d2);//выводим &nbsp; &nbsp;d2</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;function TForm2.d(a:ololo):ololo;</div><div class="code_line">&nbsp;&nbsp; &nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Result.d1:=a.d1+a.d2*a.d1;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;Result.d2:=a.d1*2+a.d2*a.d1;</div><div class="code_line">&nbsp;&nbsp; &nbsp;end;</div><div class="code_line">&nbsp;&nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp;end.</div></ol></div></div></div></div>]]></description>
        <author>Gonarh</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820743</guid>
        <pubDate>Sun, 09 Feb 2020 09:26:14 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820743</link>
        <description><![CDATA[Breind10: Нашёл такую запись,никак не соединю:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">type</div><div class="code_line">&nbsp;&nbsp;TComplex = record</div><div class="code_line">&nbsp;&nbsp; &nbsp;Re, Im: Double;</div><div class="code_line">&nbsp;&nbsp; &nbsp;function Create(ARe, AIm: Double): TComplex;</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;function TComplex.Create(ARe, AIm: Double): TComplex;</div><div class="code_line">&nbsp;&nbsp;begin</div><div class="code_line">&nbsp;&nbsp; &nbsp;Result.Re:= ARe;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Result.Im:= AIm;</div><div class="code_line">&nbsp;&nbsp;end;</div></ol></div></div></div></div>]]></description>
        <author>Breind10</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820737</guid>
        <pubDate>Sun, 09 Feb 2020 07:16:39 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820737</link>
        <description><![CDATA[Breind10: Функция вызывается один раз.<br>Как правильно прописать?<br><br>type<br>  rec = record<br>  d1,d2:integer;    <br>end;]]></description>
        <author>Breind10</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820732</guid>
        <pubDate>Sun, 09 Feb 2020 03:31:02 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820732</link>
        <description><![CDATA[MBo: Чтобы из функции вернуть несколько значений, нужно возвращаемый результат сделать типа запись (record) с несколькими полями. <br>Кроме того, можно добавить var-параметр.<br><br>А приведённый пример вообще намекает, что результат должен зависеть от количества вызовов, в этом случае нужно где-то хранить состояние.]]></description>
        <author>MBo</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820731</guid>
        <pubDate>Sun, 09 Feb 2020 02:01:11 +0000</pubDate>
        <title>Как из функции передать несколько значений?</title>
        <link>https://forum.sources.ru/index.php?showtopic=416804&amp;view=findpost&amp;p=3820731</link>
        <description><![CDATA[Breind10: На форме кнопка Button и Label1 Label2:<br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">unit Unit2;</div><div class="code_line">&nbsp;</div><div class="code_line">interface</div><div class="code_line">&nbsp;</div><div class="code_line">uses</div><div class="code_line">&nbsp;&nbsp;Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,</div><div class="code_line">&nbsp;&nbsp;Dialogs, StdCtrls;</div><div class="code_line">&nbsp;</div><div class="code_line">type</div><div class="code_line">&nbsp;&nbsp;TForm2 = class(TForm)</div><div class="code_line">&nbsp;&nbsp; &nbsp;Label1: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Button1: TButton;</div><div class="code_line">&nbsp;&nbsp; &nbsp;Label2: TLabel;</div><div class="code_line">&nbsp;&nbsp; &nbsp;procedure Button1Click(Sender: TObject);</div><div class="code_line">&nbsp;&nbsp;private</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Private declarations }</div><div class="code_line">&nbsp;&nbsp; &nbsp;function d (a, b:integer):integer;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp;public</div><div class="code_line">&nbsp;&nbsp; &nbsp;{ Public declarations }</div><div class="code_line">&nbsp;&nbsp;end;</div><div class="code_line">&nbsp;</div><div class="code_line">var</div><div class="code_line">&nbsp;&nbsp;Form2: TForm2;</div><div class="code_line">&nbsp;</div><div class="code_line">implementation</div><div class="code_line">&nbsp;</div><div class="code_line">{$R *.dfm}</div><div class="code_line">&nbsp;</div><div class="code_line">procedure TForm2.Button1Click(Sender: TObject);</div><div class="code_line">var i,i2,a,b:integer; </div><div class="code_line">begin</div><div class="code_line">a:=5;</div><div class="code_line">b:=5;</div><div class="code_line">i:=d(a,b); //ссумируем</div><div class="code_line">Label1.Caption:=IntToStr(i);//выводим &nbsp; &nbsp;d1</div><div class="code_line">&nbsp;</div><div class="code_line">i2:=d(a,b);</div><div class="code_line">Label2.Caption:=IntToStr(i2);//выводим &nbsp; &nbsp;d2</div><div class="code_line">&nbsp;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;</div><div class="code_line">function TForm2.d(a, b: integer): integer;</div><div class="code_line">var d1,d2: integer;</div><div class="code_line">begin</div><div class="code_line">d1:=a+b*a; //Присваиваем функции сумму переменных 1</div><div class="code_line">Result:=d1;</div><div class="code_line">&nbsp;</div><div class="code_line">//d2:=a*2+b*a; //Присваиваем функции сумму переменных 2</div><div class="code_line">//Result:=d2;</div><div class="code_line">&nbsp;</div><div class="code_line">end;</div><div class="code_line">&nbsp;</div><div class="code_line">end.</div></ol></div></div></div></div></div></div>]]></description>
        <author>Breind10</author>
        <category>Delphi: Общие вопросы</category>
      </item>
	
      </channel>
      </rss>
	