{"id":267621,"date":"2015-11-06T12:10:03","date_gmt":"2015-11-06T09:10:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=267621"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=267621","title":{"rendered":"\u041c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430 \u043d\u0430 Java"},"content":{"rendered":"<p>       \u0421\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0413\u0430\u0443\u0441\u0441\u0430 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Java.<\/p>\n<h2>\u0422\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h2>\n<p>  \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0442\u0435\u043e\u0440\u0438\u044e. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u043d\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438\u043b\u0438 \u0436\u0435 \u0431\u044b\u0442\u044c \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0439 (\u043d\u0435 \u0438\u043c\u0435\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0439). \u041d\u0435 \u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0421\u041b\u0410\u0423 \u043c\u043e\u0433\u0443\u0442 \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0441 \u0432\u0442\u043e\u0440\u044b\u043c \u0441\u043b\u0443\u0447\u0430\u0435\u043c, \u043a\u043e\u0433\u0434\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438\u043c\u0435\u0435\u0442 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u0435\u0442\u043e\u0434 \u041a\u0440\u0430\u043c\u0435\u0440\u0430 \u0438 \u043c\u0430\u0442\u0440\u0438\u0447\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c\u044b, \u043d\u043e \u043c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>  \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u043b\u043e\u0432\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0430 \u0434\u0432\u0430 \u044d\u0442\u0430\u043f\u0430:<\/p>\n<ul>\n<li>\u041f\u0440\u044f\u043c\u043e\u0439 \u0445\u043e\u0434<\/li>\n<li>\u041e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0434<\/li>\n<\/ul>\n<p>  \u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442\u0441\u044f \u043d\u0443\u043b\u0438 \u043d\u0438\u0436\u0435 \u0438\u043b\u0438 \u0432\u044b\u0448\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438, \u0437\u0430 \u0441\u0447\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f <b>\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u044b\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b<\/b>. \u041d\u0430 \u0432\u0442\u043e\u0440\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u043a\u043e\u043d\u0446\u0430. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0442\u0435\u043e\u0440\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435: <a href=\"http:\/\/math-deque.rhcloud.com\/articles\/index\/article_id\/method_gaussa\">\u043c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430<\/a>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441 \u0442\u0435\u043e\u0440\u0438\u0435\u0439 \u043f\u043e\u0436\u0430\u043b\u0443\u0439 \u0432\u0441\u0435. \u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.<\/p>\n<h2>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h2>\n<p>  \u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0437\u0430\u0434\u0430\u0447\u0438:<\/p>\n<ul>\n<li>\u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0438\u0435\u043c\u044b \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 <b>Number <\/b>(\u0442.\u0435. <b>Float<\/b>, <b>Integer<\/b>, <b>Double <\/b>\u0438 \u0442.\u0434.)<\/li>\n<li>\u0417\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u0432 \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u043d\u0443\u043b\u0438 \u043d\u0438\u0436\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438<\/li>\n<\/ul>\n<p><a name=\"habracut\"><\/a><br \/>  \u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u043b\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435:<\/p>\n<pre><code class=\"java\">package gauss;  public interface Gauss&lt;N extends Number, T extends Gauss&lt;N, T&gt;&gt; {     public void addEquation(T item);     public void mul(N coefficient);     public N findCoefficient(N a, N b);     public N at(int index);     public int size(); } <\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0432\u0441\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u044f\u0441\u043d\u043e, <b>N<\/b> \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0441\u043b\u0435\u0434\u043d\u0438\u043a <b>Number<\/b>&#8216;\u0430, <b>T<\/b> \u2014 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u0438\u043f, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u0434\u0430\u043d\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 (\u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u044b\u0435 \u0434\u0436\u0435\u043d\u0435\u0440\u0438\u043a\u0438). \u041c\u0435\u0442\u043e\u0434 <b><i>addEquation(T item)<\/i><\/b> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f <b><i>item<\/i><\/b> \u043a \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0441\u0432\u043e\u0435\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443. \u041e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e.<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043b\u0430\u0441\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439. \u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e \u0432 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0435 \u043d\u0438\u0436\u0435, \u043e\u043d \u0434\u0436\u0435\u043d\u0435\u0440\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Gauss \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043c\u0435\u0442\u043e\u0434\u044b \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u043e\u043c\u0443 \u0441\u043f\u0438\u0441\u043a\u0443 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0432 \u0441\u0435\u0431\u0435 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439.<\/p>\n<pre><code class=\"java\">package gauss;  import java.util.ArrayList; import java.util.List;  public class LinearSystem&lt;N extends Number, T extends Gauss&lt;N, T&gt;&gt; {     private List&lt;T&gt; list = new ArrayList&lt;T&gt;();      public T get(int index){         return list.get(index);     }      public void push(T elem){         list.add(elem);     }      public int size(){         return list.size();     }      public N itemAt(int i, int j){         return list.get(i).at(j);     } } <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u00ab\u0447\u0430\u0441\u0442\u043d\u043e\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f\u00bb \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f. \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043a\u043b\u0430\u0441\u0441 <b>MyEquation<\/b>, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0448 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u041f\u0443\u0441\u0442\u044c \u043d\u0430\u0441\u043b\u0435\u0434\u043d\u0438\u043a\u043e\u043c <b>Number<\/b>&#8216;\u0430 \u0431\u0443\u0434\u0435\u0442 <s>\u0441\u0432\u0435\u0440\u0445\u0442\u043e\u0447\u043d\u044b\u0439<\/s> \u043a\u043b\u0430\u0441\u0441 <b>Float<\/b> (\u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435 \u043b\u0443\u0447\u0448\u0435 \u0431\u0440\u0430\u0442\u044c <b>Double<\/b>). \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 <b><i>addEquation(MyEquation item)<\/i><\/b> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u044a\u0435\u043a\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 <b>ListIterator<\/b>, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 <i>\u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c<\/i> \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0435\u043c\u043e\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430.<\/p>\n<pre><code class=\"java\">package gauss;  import java.util.ArrayList; import java.util.List; import java.util.ListIterator; import java.util.Random;  public class MyEquation implements Gauss&lt;Float, MyEquation&gt; {     private List&lt;Float&gt; equation = new ArrayList&lt;Float&gt;();     public List&lt;Float&gt; getEquation(){         return equation;     }     public void generate(int size){         if (size &lt; 2) size = 2;         this.equation.clear();         for (int i = 0; i &lt; size; i++){             Random random = new Random();             this.equation.add((float) (random.nextInt()%10) + 1);         }     }     @Override     public int size(){         return equation.size();     }     @Override     public void addEquation(MyEquation item){         ListIterator&lt;Float&gt; i = equation.listIterator();         ListIterator&lt;Float&gt; j = item.getEquation().listIterator();         for(; i.hasNext() && j.hasNext();){             Float a = i.next();             Float b = j.next();             i.set(a + b);         }     }     @Override     public void mul(Float coefficient){         for(ListIterator&lt;Float&gt; i = equation.listIterator(); i.hasNext();){             Float next = i.next();             i.set(next * coefficient);         }     }     @Override     public Float findCoefficient(Float a, Float b){         if (a == 0.0f) return 1.0f;         return -b\/a;     }     @Override     public Float at(int index){         return equation.get(index);     } } <\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0438\u043c\u0435\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439. \u0421\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0431\u044a\u0435\u043a\u0442, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Gauss, \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0437\u044b\u0432\u0430\u044f \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043c\u0430\u0442\u0440\u0438\u0446\u0443 \u043a \u043d\u0443\u0436\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443.<\/p>\n<pre><code class=\"java\">package gauss;  public class Algorithm&lt;N extends Number, T extends Gauss&lt;N, T&gt;&gt; {     LinearSystem&lt;N, T&gt; list = null;     public Algorithm(LinearSystem&lt;N, T&gt; system){             list = system;     }      public void calculate() throws NullPointerException, ArithmeticException{         if (list == null){             throw new NullPointerException(&quot;LinearSystem&lt;N, T&gt; instance equal null&quot;);         }         if (!checkSystem(list)){             throw new ArithmeticException(&quot;Incorrect system for Gauss Method&quot;);         }          for(int i = 0; i &lt; list.size() - 1; i++){             for(int j = i + 1; j &lt; list.size(); j++){                 N k = list.get(j).findCoefficient(list.get(j).at(i), list.get(i).at(i));                 list.get(j).mul(k);                 list.get(j).addEquation(list.get(i));             }         }     }      private boolean checkSystem(LinearSystem&lt;N, T&gt; system){         if (system.size() &lt; 2) return false;         for(int i = 0; i &lt; system.size(); i++){             if (system.get(i).size() != (system.size() + 1)){                 return false;             }         }         return true;     } } <\/code><\/pre>\n<p>  \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0439, \u043d\u0430\u0439\u0442\u0438 \u043d\u0443\u0436\u043d\u044b\u0439 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442, \u0434\u043e\u043c\u043d\u043e\u0436\u0438\u0442\u044c \u043d\u0430 \u043d\u0435\u0433\u043e i-\u044e \u0441\u0442\u0440\u043e\u043a\u0443 (i=0..n-1), \u0438 \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0435 \u043a j-\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 (j=i..n). \u0417\u0430\u043c\u0435\u0442\u044c\u0442\u0435, \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u0435 \u0437\u043d\u0430\u0435\u0442 \u043a\u0430\u043a \u0438\u043c\u0435\u043d\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u044b <i>findCoefficient<\/i>, <i>mul<\/i> \u0438 <i>addEquation<\/i>, \u044d\u0442\u043e \u043f\u0440\u0438\u0434\u0430\u0435\u0442 \u043a\u043e\u0434\u0443 \u0431\u041e\u043b\u044c\u0448\u0443\u044e \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c, \u0442.\u043a. \u043f\u0440\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0438 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f\u043c\u0438 (\u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438), \u0431\u0443\u0434\u0443\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0440\u0435\u0445 \u0432\u044b\u0448\u0435\u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u0432, \u0430 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f \u043d\u0435\u0442\u0440\u043e\u043d\u0443\u0442\u044b\u043c.<\/p>\n<p>  \u041f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435. \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u043e \u0432\u0441\u0435 \u0432 \u043c\u0435\u0442\u043e\u0434\u0435 <b><i>main<\/i><\/b>:<\/p>\n<pre><code class=\"java\">import gauss.Algorithm; import gauss.MyEquation; import gauss.LinearSystem;  public class Main {     private static final int DEFAULT_EQUATIONS_NUMBER = 2;     private static final int DEFAULT_VARIABLES_NUMBER = 2;      public static void main(String args[]){         LinearSystem&lt;Float, MyEquation&gt; list = generateSystem();         printSystem(list);         int i, j;         Algorithm&lt;Float, MyEquation&gt; alg = new Algorithm&lt;Float, MyEquation&gt;(list);         try{             alg.calculate();         }catch (NullPointerException e){             System.out.println(e.getMessage());             System.exit(0);         }catch (ArithmeticException e){             System.out.println(e.getMessage());             System.exit(0);         }         Float [] x = new Float[DEFAULT_EQUATIONS_NUMBER];         for(i = list.size() - 1; i &gt;= 0; i--) {             Float sum = 0.0f;             for(j = list.size() - 1; j &gt; i; j--) {                 sum += list.itemAt(i, j) * x[j];             }             x[i] = (list.itemAt(i, list.size()) - sum) \/ list.itemAt(i, j);         }         printSystem(list);         printVector(x);     }      public static LinearSystem&lt;Float, MyEquation&gt; generateSystem(){         LinearSystem&lt;Float, MyEquation&gt; list = new LinearSystem&lt;Float, MyEquation&gt;();         int i;         for (i = 0; i &lt; DEFAULT_EQUATIONS_NUMBER; i++){             MyEquation eq = new MyEquation();             eq.generate(DEFAULT_VARIABLES_NUMBER + 1);             list.push(eq);         }         return list;     }      public static void printSystem(LinearSystem&lt;Float, MyEquation&gt; system){         for (int i = 0; i &lt; system.size(); i++){             MyEquation temp = system.get(i);             String s = &quot;&quot;;             for (int j = 0; j &lt; temp.size(); j++){                 s += String.format(&quot;%f; %s&quot;, system.itemAt(i, j), &quot;\\t&quot;);             }             System.out.println(s);         }System.out.println(&quot;&quot;);     }      public static void printVector(Float [] x){         String s = &quot;&quot;;         for (int i = 0; i &lt; x.length; i++){             s += String.format(&quot;x%d = %f; &quot;, i, x[i]);         }System.out.println(s);     } } <\/code><\/pre>\n<p>  \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u044d\u0442\u043e \u0447\u0443\u0434\u043e, \u0447\u0442\u043e \u0431\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b\u2026<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/content.foto.my.mail.ru\/mail\/johnrotten\/20\/h-31.jpg\" alt=\"image\"\/><\/p>\n<p>  \u042d\u0442\u043e \u0432\u0441\u0435. <a href=\"https:\/\/github.com\/mathsatan\/gauss\">\u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438<\/a> \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043d\u0430 github&#8217;\u0435.<\/p>\n<h2>\u0412\u044b\u0432\u043e\u0434<\/h2>\n<p>  \u041c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430 \u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u0434\u0434\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e (\u043a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0434 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e), \u043e\u0434\u043d\u0430\u043a\u043e \u0432\u044b\u0448\u043b\u0430 \u0441\u0432\u043e\u0435\u043e\u0431\u0440\u0430\u0437\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u0430\u044f, \u043d\u0430\u0434\u0435\u044e\u0441\u044c, \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043a\u043e\u043c\u0443 \u0442\u043e \u043b\u0443\u0447\u0448\u0435 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0438\u0441\u043a\u0443\u0441\u0441\u0442\u0432\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 \u0438 \u0434\u0436\u0435\u043d\u0435\u0440\u0438\u043a\u043e\u0432.<\/p>\n<h3>\u0421\u043f\u0438\u0441\u043e\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b:<\/h3>\n<p>  <\/p>\n<ul>\n<li><a href=\"http:\/\/math-deque.rhcloud.com\/articles\/index\/article_id\/method_gaussa\">\u041c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u043c \u044f\u0437\u044b\u043a\u0435. \u041c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430<\/a><\/li>\n<li><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%93%D0%B0%D1%83%D1%81%D1%81%D0%B0\">\u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u044f. \u041c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430<\/a><\/li>\n<li><a href=\"http:\/\/www.webmath.ru\/poleznoe\/formules_6_8.php\"> \u042d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u043d\u044b\u0435 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u0430\u0442\u0440\u0438\u0446\u044b<\/a><\/li>\n<\/ul>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/270289\/\"> http:\/\/habrahabr.ru\/post\/270289\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>       \u0421\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0413\u0430\u0443\u0441\u0441\u0430 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0430\u043b\u0433\u0435\u0431\u0440\u0430\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Java.<\/p>\n<h2>\u0422\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h2>\n<p>  \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0442\u0435\u043e\u0440\u0438\u044e. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u043d\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u0438\u043b\u0438 \u0436\u0435 \u0431\u044b\u0442\u044c \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e\u0439 (\u043d\u0435 \u0438\u043c\u0435\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0439). \u041d\u0435 \u0432\u0441\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0421\u041b\u0410\u0423 \u043c\u043e\u0433\u0443\u0442 \u0441\u043f\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0441 \u0432\u0442\u043e\u0440\u044b\u043c \u0441\u043b\u0443\u0447\u0430\u0435\u043c, \u043a\u043e\u0433\u0434\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438\u043c\u0435\u0435\u0442 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u0435\u0442\u043e\u0434 \u041a\u0440\u0430\u043c\u0435\u0440\u0430 \u0438 \u043c\u0430\u0442\u0440\u0438\u0447\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c\u044b, \u043d\u043e \u043c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>  \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u043b\u043e\u0432\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0430 \u0434\u0432\u0430 \u044d\u0442\u0430\u043f\u0430:<\/p>\n<ul>\n<li>\u041f\u0440\u044f\u043c\u043e\u0439 \u0445\u043e\u0434<\/li>\n<li>\u041e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u0445\u043e\u0434<\/li>\n<\/ul>\n<p>  \u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442\u0441\u044f \u043d\u0443\u043b\u0438 \u043d\u0438\u0436\u0435 \u0438\u043b\u0438 \u0432\u044b\u0448\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438, \u0437\u0430 \u0441\u0447\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f <b>\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u044b\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b<\/b>. \u041d\u0430 \u0432\u0442\u043e\u0440\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043d\u0430\u0445\u043e\u0434\u044f\u0442 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u043a\u043e\u043d\u0446\u0430. \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0442\u0435\u043e\u0440\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435: <a href=\"http:\/\/math-deque.rhcloud.com\/articles\/index\/article_id\/method_gaussa\">\u043c\u0435\u0442\u043e\u0434 \u0413\u0430\u0443\u0441\u0441\u0430<\/a>, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441 \u0442\u0435\u043e\u0440\u0438\u0435\u0439 \u043f\u043e\u0436\u0430\u043b\u0443\u0439 \u0432\u0441\u0435. \u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.<\/p>\n<h2>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h2>\n<p>  \u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043f\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0437\u0430\u0434\u0430\u0447\u0438:<\/p>\n<ul>\n<li>\u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0443\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0439 \u0432 \u0432\u0438\u0434\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0438\u0435\u043c\u044b \u043e\u0431\u043e\u0431\u0449\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0430 <b>Number <\/b>(\u0442.\u0435. <b>Float<\/b>, <b>Integer<\/b>, <b>Double <\/b>\u0438 \u0442.\u0434.)<\/li>\n<li>\u0417\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u0432 \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u043d\u0443\u043b\u0438 \u043d\u0438\u0436\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0434\u0438\u0430\u0433\u043e\u043d\u0430\u043b\u0438<\/li>\n<\/ul>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-267621","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/267621","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=267621"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/267621\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=267621"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=267621"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=267621"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}