{"id":2083,"date":"2009-02-26T11:23:53","date_gmt":"2009-02-26T08:23:53","guid":{"rendered":"http:\/\/studentpmr.ru\/?p=2083"},"modified":"2009-02-26T11:23:53","modified_gmt":"2009-02-26T08:23:53","slug":"%d1%82%d0%b5%d0%bc%d0%b0-6-%d1%88%d0%b0%d0%b1%d0%bb%d0%be%d0%bd%d1%8b-%d1%81%d0%bf%d0%b8%d1%81%d0%ba%d0%b8","status":"publish","type":"post","link":"https:\/\/studentpmr.ru\/?p=2083","title":{"rendered":"\u0422\u0435\u043c\u0430 6: \u0428\u0430\u0431\u043b\u043e\u043d\u044b. \u0421\u043f\u0438\u0441\u043a\u0438."},"content":{"rendered":"<p>6.1. \u0428\u0430\u0431\u043b\u043e\u043d\u044b.<br \/>\n\u041f\u043e\u0434\u043e\u0431\u043d\u043e \u0442\u043e\u043c\u0443 \u043a\u0430\u043a \u043a\u043b\u0430\u0441\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0445\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441-\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0442\u0430\u043a \u0438 \u0448\u0430\u0431\u043b\u043e\u043d \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0445\u0435-\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u0428\u0430\u0431\u043b\u043e\u043d\u044b  \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e  \u043f\u043e\u043b\u0435\u0437\u043d\u044b  \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u0443-\u044e\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u044b. \u0418\u043d\u043e\u0433\u0434\u0430  \u0438\u0445 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u0442\u0438\u043f\u0430\u043c\u0438, \u0442\u0430\u043a \u043a\u0430\u043a  \u043e\u043d\u0438  \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442  \u043b\u0438\u0448\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0444\u0443\u043d-\u043a\u0446\u0438\u0439 \u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u043d\u043e \u043d\u0435 \u0434\u0435\u0442\u0430\u043b\u0438 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.<!--more--><\/p>\n<p>6.1.1 \u0428\u0430\u0431\u043b\u043e\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.<\/p>\n<p>\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043e\u0431\u0449\u0438\u0435 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430  \u0444\u0443\u043d\u043a\u0446\u0438\u0439  \u0438  \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435,  \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p>template&lt;classT&gt; void f(T param)<br \/>\n{ \/\/ \u0422\u0435\u043b\u043e  \u0444\u0443\u043d\u043a\u0446\u0438\u0438  }<\/p>\n<p>\u0428\u0430\u0431\u043b\u043e\u043d \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u043e\u0439 template&lt;class T&gt;, \u0443\u043a\u0430\u0437\u044b\u0432\u0430-\u044e\u0449\u0435\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0443, \u0447\u0442\u043e \u0422 &#8212; \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0438\u043c\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0421\u043b\u043e\u0432\u0430 class \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043a\u043b\u0430\u0441\u0441 \u0421++. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c, \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u0438\u043d  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 \u0422 \u0432 \u0441\u043a\u043e\u0431\u043a\u0430\u0445 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438  \u0444\u0443\u043d\u043a\u0446\u0438\u0438  \u0434\u0430\u043d\u043d\u044b\u0445  \u0434\u043b\u044f  \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u041c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0430\u0442\u044c \u0442\u0430\u043a\u0436\u0435 \u0437\u043d\u0430\u0447\u0435-\u043d\u0438\u0435 (T param), \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c (T*  param) \u0438\u043b\u0438 \u0441\u0441\u044b\u043b\u043a\u0443 (T&amp; param). \u0428\u0430\u0431\u043b\u043e\u043d \u043c\u043e\u0436\u0435\u0442  \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0442\u044c  \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e  \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u044d\u0442\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0422, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p>template&lt;class T&gt; T f(int a, T b) \/\/\u0442\u0438\u043f T \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f  \u043f\u043e\u0437\u0436\u0435<br \/>\n{  \/\/  \u0422\u0435\u043b\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 }<\/p>\n<p>\u041f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<br \/>\ndouble f(int a, double b);<br \/>\n\u0415\u0441\u043b\u0438  \u0431\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0431\u044b\u043b\u0430 \u043e\u0431\u044b\u0447\u043d\u043e\u0439, \u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430 \u0431\u044b\u043b\u0430 \u0431\u044b \u0435\u0435  \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f. \u041d\u043e \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u0448\u0430\u0431\u043b\u043e\u043d\u043d\u0430\u044f, \u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0441\u0430\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u043a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u0437\u0430\u043c\u0435\u043d\u0438\u0432 \u0422 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430 double.<br \/>\n\/\/\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 1<\/p>\n<p>#ifndef _MINMAX<br \/>\n#define _MINMAX<br \/>\ntemplate&lt;class T&gt; T max(T a, T b)<br \/>\n{<br \/>\nif( a&gt;b )<br \/>\nreturn a;<br \/>\nelse<br \/>\nreturn b;<br \/>\n}<br \/>\ntemplate&lt;class T&gt; T min(T a, T b)<br \/>\n{<br \/>\nif( a&lt;b )<br \/>\nreturn a;<br \/>\nelse<br \/>\nreturn b;<br \/>\n}<br \/>\n#endif<br \/>\n\u042d\u0442\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e  \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c  \u0434\u043b\u044f  \u043b\u044e\u0431\u044b\u0445  \u0442\u0438\u043f\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445.<br \/>\n#include &lt;iostream.h&gt;<br \/>\n#include &lt;conio.h&gt;<br \/>\n#include &#171;minmax.h&#187;<br \/>\nint max (int a, int b);<br \/>\ndouble max (double a, double b);<br \/>\nchar max (char a, char b);<br \/>\nvoid main()<br \/>\n{<br \/>\nclrscr();<br \/>\nint i1 = 100, i2 = 200;<br \/>\ndouble d1 = 3.14, d2 = 9.87;<br \/>\nchar c1 = &#8216;A&#8217;, c2 = &#8216;z&#8217;;<br \/>\ncout &lt;&lt; &#171;100, 200 \\n&#187;;<br \/>\ncout &lt;&lt; &#171;max(i1, i2) == &#187; &lt;&lt; max(i1, i2) &lt;&lt; endl;<br \/>\ncout &lt;&lt; &#171;3.14, 9.87 \\n&#187;;<br \/>\ncout &lt;&lt; &#171;max(d1, d2) == &#187; &lt;&lt; max(d1, d2) &lt;&lt; endl;<br \/>\ncout &lt;&lt; c1 &lt;&lt; c2 &lt;&lt; &#171;\\n&#187;;<br \/>\ncout &lt;&lt; &#171;max(c1, c2) == &#187; &lt;&lt; max(c1, c2) &lt;&lt; endl;<br \/>\n}<br \/>\n\u0412 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u0442\u0440\u0438 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u0430. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0440\u043e\u0433-\u0440\u0430\u043c\u043c\u0430  \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0438\u0445 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439, \u0442\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0438\u0449\u0435\u0442 \u0438\u0445  \u0448\u0430\u0431\u043b\u043e\u043d, \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u043f\u043e \u0442\u0438\u043f\u0443 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438 \u0435\u0435 \u043f\u0430-\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432.  \u041d\u0430\u0439\u0434\u044f  \u0442\u0430\u043a\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d, \u043e\u043d \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442 \u0442\u0440\u0438 \u043f\u0435\u0440\u0435\u0433\u0440\u0443-\u0436\u0435\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 max.<\/p>\n<p>6.1.2. \u0428\u0430\u0431\u043b\u043e\u043d\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b.<\/p>\n<p>\u0428\u0430\u0431\u043b\u043e\u043d \u043a\u043b\u0430\u0441\u0441\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u043a\u0435\u043b\u0435\u0442 \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0434\u043b\u044f \u0435\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0442\u0438\u043f\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445,  \u043e\u043f-\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c. \u041a\u0430\u043a \u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0448\u0430\u0431\u043b\u043e\u043d\u044b  \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445.<br \/>\n\/\/ \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 2<br \/>\n#ifndef _DB<br \/>\n#define _DB<br \/>\ntemplate&lt;class T&gt;<br \/>\nclass TDatabase {<br \/>\nprivate:<br \/>\nT *rp;    \/\/\u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u0438<br \/>\nint num;  \/\/\u0447\u0438\u0441\u043b\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439<br \/>\npublic:<br \/>\nTDatabase(int n)<br \/>\n{ pr = new T[ num = n];}<br \/>\n~TDatabase() {delete[] rp }<br \/>\nvoid DoNothing(void);<br \/>\nT &amp;GetRecord(int recnum);<br \/>\n};<br \/>\ntemplate&lt;class T&gt;<br \/>\nvoid TDatabase&lt;T&gt;::DoNothing(void) { }<\/p>\n<p>template&lt;class T&gt;<br \/>\nT &amp;TDatabase&lt;T&gt;::GetRecord(int recnum)<br \/>\n{<br \/>\nT *crp = rp;<br \/>\nif (0 &lt;= recnum &amp;&amp; recnum &lt; num)<br \/>\nwhile (recnum &#8212; &gt;0)<br \/>\ncrp++;<br \/>\nreturn *crp;<br \/>\n}<br \/>\n#endif<br \/>\n#include &lt;iostream.h&gt;<br \/>\n#include &lt;string.h&gt;<br \/>\n#include &#171;db.h&#187;<br \/>\nclass TRecord {<br \/>\nprivate:<br \/>\nchar name[41];<br \/>\npublic:<br \/>\nTRecord() { name[0] = 0; }<br \/>\nTRecord(const char *s)  { Assign(s); }<br \/>\nvoid Assign(const char *s) { strcpy(name, s); }<br \/>\nchar *GetName(void) { return name; }<br \/>\n};<br \/>\nvoid main()<br \/>\n{<br \/>\nint rn;   \/\/\u0438\u043d\u0434\u0435\u043a\u0441 \u0447\u0438\u0441\u043b\u0430 \u0437\u0430\u043f\u0438\u0441\u0435\u0439<br \/>\nTDatabase&lt;TRecord&gt; db(3); \/\/\u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0442\u0440\u0435\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439<br \/>\nTDatabase&lt;TRecord*&gt; dbp(3); \/\/\u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0442\u0440\u0435\u0445 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439<br \/>\nTDatabase&lt;TRecord&gt; *pdb;   \/\/\u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0411\u0414<br \/>\nTDatabase&lt;TRecord*&gt; *ppdb;  \/\/\u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0411\u0414 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439<\/p>\n<p>cout &lt;&lt; endl &lt;&lt; &#171;Database of 3 TRecord&#187; &lt;&lt; endl;<br \/>\ndb.GetRecord(0).Assign(&#171;George Washington&#187;);<br \/>\ndb.GetRecord(1).Assign(&#171;John Adams&#187;);<br \/>\ndb.GetRecord(2).Assign(&#171;Thomas Jefferson&#187;);<br \/>\nfor ( rn = 0; rn &lt; 3; rn++ )<br \/>\ncout &lt;&lt; db.GetRecord(rn).GetName() &lt;&lt; endl;<\/p>\n<p>cout &lt;&lt; endl &lt;&lt; &#171;Database of 3 TRecord pointers&#187; &lt;&lt; endl;<br \/>\ndbp.GetRecord(0) = new TRecord(&#171;George Washington&#187;);<br \/>\ndbp.GetRecord(1) = new TRecord(&#171;John Adams&#187;);<br \/>\ndbp.GetRecord(2) = new TRecord(&#171;Thomas Jefferson&#187;);<br \/>\nfor ( rn = 0; rn &lt; 3; rn++ )<br \/>\ncout &lt;&lt; dbp.GetRecord(rn)-&gt;GetName() &lt;&lt; endl;<\/p>\n<p>cout &lt;&lt; endl &lt;&lt; &#171;Pointer to database of 3 TRecord &#187; &lt;&lt; endl;<br \/>\npdb= new TDatabase&lt;TRecord&gt;(3);<br \/>\npdb-&gt;GetRecord(0).Assign(&#171;George Washington&#187;);<br \/>\npdb-&gt;GetRecord(1).Assign(&#171;John Adams&#187;);<br \/>\npdb-&gt;GetRecord(2).Assign(&#171;Thomas Jefferson&#187;);<br \/>\nfor ( rn = 0; rn &lt; 3; rn++ )<br \/>\ncout &lt;&lt; pdb-&gt;GetRecord(rn).GetName() &lt;&lt; endl;<\/p>\n<p>cout &lt;&lt; endl &lt;&lt; &#171;Pointer to database of 3 TRecord pointers&#187; &lt;&lt; endl;<br \/>\nppdb = new TDatabase&lt;TRecord *&gt;(3);<br \/>\nppdb-&gt;GetRecord(0) = new TRecord(&#171;George Washington&#187;);<br \/>\nppdb-&gt;GetRecord(1) = new TRecord(&#171;John Adams&#187;);<br \/>\nppdb-&gt;GetRecord(2) = new TRecord(&#171;Thomas Jefferson&#187;);<br \/>\nfor ( rn = 0; rn &lt; 3; rn++ )<br \/>\ncout &lt;&lt; ppdb-&gt;GetRecord(rn)-&gt;GetName() &lt;&lt; endl;<\/p>\n<p>}<br \/>\n\u041c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0442\u0438\u043f\u043e\u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u043a\u0438\u0435 \u0442\u0438\u043f\u044b  \u043a\u043b\u0430\u0441\u0441\u043e\u0432  \u043a\u0430\u043a  TRecord.<br \/>\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: TDatabase&lt;double&gt; dbd(100);<br \/>\n\u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0448\u0438\u0440\u043e\u043a\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043d\u0430\u0445\u043e\u0434\u044f\u0442 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043d\u044b\u043c\u0438  \u043a\u043b\u0430\u0441\u0441\u0430\u043c\u0438  \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043a\u043b\u0430\u0441\u0441\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440,  \u043c\u0430\u0441\u0441\u0438\u0432\u044b, \u0441\u0432\u044f\u0437\u043d\u044b\u0435 \u0441\u043f\u0438\u0441\u043a\u0438.<br \/>\n\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432:<br \/>\n&#8212; \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u044b\u0439 (&#171;\u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u044b\u0439&#187;) \u043c\u0430\u0441\u0441\u0438\u0432<br \/>\n&#8212; \u043e\u0447\u0435\u0440\u0435\u0434\u044c<br \/>\n&#8212; \u0441\u0442\u0435\u043a<br \/>\n&#8212; \u0441\u0432\u044f\u0437\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a<br \/>\n&#8212; \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0435 \u0434\u0435\u0440\u0435\u0432\u043e<br \/>\n\u041a\u0430\u0436\u0434\u044b\u0439 \u0438\u0437 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438 \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u043d\u0430\u0434 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d-\u043d\u044b\u043c\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c\u0438.<\/p>\n<p>6.2. \u0421\u0432\u044f\u0437\u043d\u044b\u0435 \u0441\u043f\u0438\u0441\u043a\u0438<\/p>\n<p>\u0421\u0432\u044f\u0437\u043d\u044b\u0435 \u0441\u043f\u0438\u0441\u043a\u0438 \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442 \u0433\u0438\u0431\u043a\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a  \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0441\u044b\u043b\u043a\u0443  \u043d\u0430  \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0446\u0435\u043f\u043e\u0447\u043a\u0435. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f  \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u0437 \u0441\u0432\u044f\u0437\u043d\u044b\u0445 \u0441\u043f\u0438\u0441\u043a\u043e\u0432 \u043d\u0435 \u043f\u0440\u0438\u0432\u043e-\u0434\u0438\u0442 \u043a \u0435\u0433\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044e \u0438\u0437  \u0441\u043f\u0438\u0441\u043a\u0430 \u0438 \u043f\u043e\u0442\u0435\u0440\u0435 \u0434\u0430\u043d\u043d\u044b\u0445.<br \/>\n\u0421\u0432\u044f\u0437\u043d\u044b\u0435 \u0441\u043f\u0438\u0441\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u044b\u0435  \u0438  \u0434\u0432\u043e\u0439\u043d\u044b\u0435 \u0441\u0432\u044f-\u0437\u0438. \u0412 \u0441\u043f\u0438\u0441\u043a\u0435 \u0441 \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u044b\u043c\u0438 \u0441\u0432\u044f\u0437\u044f\u043c\u0438 \u043a\u0430\u0436\u0434\u044b\u0439  \u044d\u043b\u0435\u043c\u0435\u043d\u0442  \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442  \u0441\u0441\u044b\u043b\u043a\u0443  \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u0441\u043f\u0438\u0441\u043a\u0435 \u0441 \u0434\u0432\u043e\u0439\u043d\u044b\u043c\u0438 \u0441\u0432\u044f\u0437\u044f\u043c\u0438 \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b.<br \/>\n\u0421\u043f\u0438\u0441\u043a\u0438 \u0441 \u0434\u0432\u043e\u0439\u043d\u044b\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0431\u043e\u0439  \u0434\u0438\u043d\u0430\u043c\u0438-\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442  \u0440\u0430\u0441\u0442\u044f\u0433\u0438\u0432\u0430\u0442\u044c\u0441\u044f  \u0438\u043b\u0438  \u0441\u0436\u0438\u043c\u0430\u0442\u044c\u0441\u044f  \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u041f\u0440\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0438 \u0438\u043b\u0438  \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438  \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u0441\u044b\u043b\u043a\u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u0435\u0440\u0435\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442\u0441\u044f.<br \/>\n\/\/ \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 3<br \/>\n\/\/ \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 \u0441\u0432\u044f\u0437\u043d\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u0441 \u0434\u0432\u043e\u0439\u043d\u044b\u043c\u0438<br \/>\n\/\/ \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438<br \/>\n\/\/ \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441 \u0434\u0432\u043e\u0439\u043d\u044b\u043c\u0438 \u0441\u0432\u044f\u0437\u044f\u043c\u0438<\/p>\n<p>template &lt;class DataT&gt; class listob {<br \/>\npublic:<br \/>\nDataT info;    \/\/\u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f<br \/>\nlistob&lt;DataT&gt; *next;     \/\/\u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0441\u043b\u0435\u0434. \u043e\u0431\u044a\u0435\u043a\u0442<br \/>\nlistob&lt;DataT&gt; *prior;     \/\/\u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u043f\u0440\u0435\u0434. \u043e\u0431\u044a\u0435\u043a\u0442<br \/>\nlistob() {<br \/>\ninfo = 0;<br \/>\nnext = NULL;<br \/>\nprior = NULL;<br \/>\n};<br \/>\nlistob (DataT c) {<br \/>\ninfo = c;<br \/>\nnext = NULL;<br \/>\nprior = NULL;<br \/>\n};<br \/>\nlistob&lt;DataT&gt; *getnext() { return next; }<br \/>\nlistob&lt;DataT&gt; *getprior() { return prior; }<br \/>\nvoid getinfo (DataT &amp;c) { c = info; }<br \/>\nvoid change (DataT c) { info = c; }  \/\/\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nfriend ostream &amp;operator&lt;&lt;(ostream &amp;stream,listob&lt;DataT&gt; o);<br \/>\nfriend ostream &amp;operator&lt;&lt;(ostream &amp;stream,listob&lt;DataT&gt; *o);<br \/>\nfriend istream &amp;operator&gt;&gt;(istream &amp;stream,listob&lt;DataT&gt; &amp;o);<br \/>\n};<br \/>\n\/\/ \u041f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0430 &lt;&lt; \u0434\u043b\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u0430 listob<br \/>\ntemplate &lt;class DataT&gt;<br \/>\nostream &amp;operator&lt;&lt;(ostream &amp;stream,listob&lt;DataT&gt; o)<br \/>\n{<br \/>\nstream &lt;&lt; o.info &lt;&lt; endl;<br \/>\nreturn stream;<br \/>\n}<br \/>\n\/\/ \u041f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0430 &lt;&lt; \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u0438\u043f\u0430 listob<br \/>\ntemplate &lt;class DataT&gt;<br \/>\nostream &amp;operator&lt;&lt;(ostream &amp;stream,listob&lt;DataT&gt; *o)<br \/>\n{<br \/>\nstream &lt;&lt; o-&gt;info &lt;&lt; endl;<br \/>\nreturn stream;<br \/>\n}<br \/>\n\/\/ \u041f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0430 &gt;&gt; \u0434\u043b\u044f cc\u044b\u043b\u043a\u0438 \u043d\u0430 \u043e\u0431\u044a\u0435\u043a\u0442 \u0442\u0438\u043f\u0430 listob<br \/>\ntemplate &lt;class DataT&gt;<br \/>\nistream &amp;operator&gt;&gt;(istream &amp;stream,listob&lt;DataT&gt; &amp;o)<br \/>\n{<br \/>\ncout &lt;&lt; &#171;\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e: &#187; ;<br \/>\nstream &gt;&gt; o.info;<br \/>\nreturn stream;<br \/>\n}<\/p>\n<p>\/\/\u041a\u043b\u0430\u0441\u0441, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u0441\u0432\u044f\u0437\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a<\/p>\n<p>template &lt;class DataT&gt; class dllist : public listob&lt;DataT&gt; {<br \/>\nlistob&lt;DataT&gt; *start, *end;   \/\/*next, *prior<br \/>\npublic:<br \/>\ndllist() { start = end = NULL; }<br \/>\n~dllist() ;<\/p>\n<p>void store(DataT c);  \/\/\u0432\u0432\u043e\u0434 \u043d\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nvoid remove(listob&lt;DataT&gt; *ob);  \/\/\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\nvoid frwdlist(); \/\/\u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441 \u043d\u0430\u0447\u0430\u043b\u0430<br \/>\nvoid bkwdlist(); \/\/ \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441 \u043a\u043e\u043d\u0446\u0430<br \/>\nlistob&lt;DataT&gt; *find(DataT c); \/\/\u0443\u043a. \u043d\u0430 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435<br \/>\nlistob&lt;DataT&gt; *getstart() { return start; }<br \/>\nlistob&lt;DataT&gt; *getend() { return end; }<br \/>\n};<br \/>\n\/\/ \u0414\u0435\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 dllist<br \/>\ntemplate &lt;class DataT&gt; dllist&lt;DataT&gt; :: ~dllist()<br \/>\n{<br \/>\nlistob&lt;DataT&gt; *p, *p1;<br \/>\np = start;<br \/>\nwhile (p) {<br \/>\np1 = p-&gt;next;<br \/>\ndelete p;<br \/>\np = p1;<br \/>\n}<br \/>\n}<\/p>\n<p>\u041a\u043b\u0430\u0441\u0441 dllist \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0446\u0435\u043b\u044b\u0439 \u0440\u044f\u0434 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0430\u0434  \u0441\u043f\u0438\u0441\u043a\u043e\u043c  \u0441 \u0434\u0432\u043e\u0439\u043d\u044b\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0430\u043c\u0438:<br \/>\n&#8212; \u0432\u0432\u043e\u0434 \u043d\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 &#8212; \u0444\u0443\u043d\u043a\u0446\u0438\u044f store();<br \/>\n&#8212; \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 &#8212; \u0444\u0443\u043d\u043a\u0446\u0438\u044f remove();<br \/>\n&#8212; \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u043f\u0438\u0441\u043a\u0430 \u0432 \u043b\u044e\u0431\u043e\u043c \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 &#8212;  \u0444\u0443\u043d\u043a\u0446\u0438\u0438  frwdlist() \u043e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u043a \u043a\u043e\u043d\u0446\u0443 \u0438 bkwdlist() \u043e\u0442 \u043a\u043e\u043d\u0446\u0430 \u043a \u043d\u0430\u0447\u0430\u043b\u0443<br \/>\n&#8212; \u043f\u043e\u0438\u0441\u043a \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 &#8212; \u0444\u0443\u043d\u043a\u0446\u0438\u044f find();<br \/>\n&#8212; \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u043d\u0430 \u043d\u0430\u0447\u0430\u043b\u043e \u0438 \u043a\u043e\u043d\u0435\u0439 \u0441\u043f\u0438\u0441\u043a\u0430<\/p>\n<p>\/\/\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430<br \/>\ntemplate &lt;class DataT&gt; void dllist&lt;DataT&gt; :: store(DataT c)<br \/>\n{<br \/>\nlistob&lt;DataT&gt; *p;<br \/>\np = new listob&lt;DataT&gt;;<br \/>\nif (!p) {<br \/>\ncout &lt;&lt; &#171;\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438\\n&#187;;<br \/>\nexit(1);<br \/>\n}<br \/>\np-&gt;info = c;<br \/>\nif (start == NULL) { \/\/\u043f\u0435\u0440\u0432\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nend = start = p;<br \/>\n}<br \/>\nelse {<br \/>\np-&gt;prior = end;<br \/>\nend-&gt;next = p;<br \/>\nend = p;<br \/>\n}<br \/>\n}<\/p>\n<p>\/\/\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u0441 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435\u043c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439<\/p>\n<p>template &lt;class DataT&gt; void<br \/>\ndllist&lt;DataT&gt; :: remove(dllist&lt;DataT&gt; *ob)<br \/>\n{<br \/>\nif (ob-&gt;prior) { \/\/\u043d\u0435 \u043f\u0435\u0440\u0432\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<br \/>\nob-&gt;prior-&gt;next = ob-&gt;next;<br \/>\nif (ob-&gt;next) \/\/\u043d\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<br \/>\nob-&gt;next-&gt;prior = ob-&gt;prior;<br \/>\nelse     \/\/\u0438\u043d\u0430\u0447\u0435 \u0443\u0434\u0430\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442<br \/>\nend = ob-&gt;prior; \/\/\u043d\u0430 \u043a\u043e\u043d\u0435\u0446 \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\n}<br \/>\nelse {    \/\/\u0443\u0434\u0430\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u043f\u0438\u0441\u043a\u0430<br \/>\nif (ob-&gt;next) { \/\/ \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u0435 \u043f\u0443\u0441\u0442<br \/>\nob-&gt;next-&gt;prior = NULL;<br \/>\nstart = ob-&gt;next;<br \/>\n}<br \/>\nelse     \/\/\u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0443\u0441\u0442<br \/>\nstart = end = NULL;<br \/>\n}<br \/>\n}<\/p>\n<p>\/\/ \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u043f\u0438\u0441\u043a\u0430 \u043e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u043a \u043a\u043e\u043d\u0446\u0443<\/p>\n<p>template &lt;class DataT&gt; void dllist&lt;DataT&gt; :: frwdlist()<br \/>\n{<br \/>\nlistob&lt;DataT&gt; *temp;<br \/>\ntemp = start;<br \/>\nwhile (temp) {<br \/>\ncout &lt;&lt; temp-&gt;info &lt;&lt; &#187;  &#171;;<br \/>\ntemp = temp-&gt;getnext();<br \/>\n}<br \/>\ncout &lt;&lt; endl;<br \/>\n}<\/p>\n<p>\/\/ \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u043f\u0438\u0441\u043a\u0430 \u043e\u0442 \u043a\u043e\u043d\u0446\u0430 \u043a \u043d\u0430\u0447\u0430\u043b\u0443<\/p>\n<p>template &lt;class DataT&gt; void dllist&lt;DataT&gt; :: bkwdlist()<br \/>\n{<br \/>\nlistob&lt;DataT&gt; *temp;<br \/>\ntemp = end;<br \/>\nwhile (temp) {<br \/>\ncout &lt;&lt; temp-&gt;info &lt;&lt; &#187;  &#171;;<br \/>\ntemp = temp-&gt;getprior();<br \/>\n}<br \/>\ncout &lt;&lt; endl;<br \/>\n}<\/p>\n<p>\/\/ \u041f\u043e\u0438\u0441\u043a \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0433\u043e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0449\u0443\u044e \u0441<br \/>\n\/\/ \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439<\/p>\n<p>template &lt;class DataT&gt; listob&lt;DataT&gt;<br \/>\n*dllist&lt;DataT&gt; :: find(DataT c)<br \/>\n{<br \/>\nlistob&lt;DataT&gt; *temp;<br \/>\ntemp = start;<br \/>\nwhile (temp) {<br \/>\nif (c == temp-&gt;info) return temp;<br \/>\ntemp = temp-&gt;getnext();<br \/>\n}<br \/>\nreturn NULL;<br \/>\n}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>6.1. \u0428\u0430\u0431\u043b\u043e\u043d\u044b. \u041f\u043e\u0434\u043e\u0431\u043d\u043e \u0442\u043e\u043c\u0443 \u043a\u0430\u043a \u043a\u043b\u0430\u0441\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0445\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441-\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430, \u0442\u0430\u043a \u0438 \u0448\u0430\u0431\u043b\u043e\u043d \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0441\u0445\u0435-\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u0428\u0430\u0431\u043b\u043e\u043d\u044b \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u044b \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u0443-\u044e\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u044b. \u0418\u043d\u043e\u0433\u0434\u0430 \u0438\u0445 \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u0442\u0438\u043f\u0430\u043c\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d\u0438 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043b\u0438\u0448\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u0444\u0443\u043d-\u043a\u0446\u0438\u0439 \u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u043d\u043e \u043d\u0435 \u0434\u0435\u0442\u0430\u043b\u0438 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"_links":{"self":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/2083"}],"collection":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2083"}],"version-history":[{"count":1,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/2083\/revisions"}],"predecessor-version":[{"id":2084,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=\/wp\/v2\/posts\/2083\/revisions\/2084"}],"wp:attachment":[{"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2083"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2083"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/studentpmr.ru\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2083"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}