Почему получается один результат в разные переменных? Java

Сама программа

package sample;

import javafx.fxml.FXML;
import javafx.geometry.Orientation;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.FlowPane;

import java.util.ArrayList;
import java.util.List;

import static java.lang.Double.parseDouble;

public class Controller {

    List<TextField> textFields = new ArrayList<>();
    List<Label> lblFields = new ArrayList<>();
    List<TextField> textFields2 = new ArrayList<>();
    List<Label> lblFields2 = new ArrayList<>();
    List<TextField> textFields3 = new ArrayList<>();
    List<Label> lblFields3 = new ArrayList<>();

    @FXML
    TextField text1_ok;
    @FXML
    TextField text1_ok1;
    @FXML
    FlowPane grid;
    @FXML
    FlowPane grid_2;
    @FXML
    FlowPane grid_3;
    
    int count;
    int count1;
    double vjj;
    double bjj;
    double cjj;
    double djj;
    double ejj;
    double fjj;
    double hjj;
    double[] t;

    public void click_ok() {
        count = Integer.parseInt(text1_ok.getText());

        grid.setVgap(8);
        grid.setHgap(8);
        grid.setOrientation(Orientation.VERTICAL);

        for (int i = 0; i < count; i++) {
            TextField tmp = new TextField();
            Label tmpLbl = new Label();
            textFields.add(tmp);
            lblFields.add(tmpLbl);
            grid.getChildren().add(tmp);
            grid.getChildren().add(tmpLbl);
        }
        lblFields.get(0).setText("1");
        lblFields.get(1).setText("2");
        lblFields.get(2).setText("3");
        lblFields.get(3).setText("4");
        lblFields.get(4).setText("5");
        lblFields.get(5).setText("6");
        lblFields.get(6).setText("7");

        String a = textFields.get(0).getText();
        String b = textFields.get(1).getText();
        String c = textFields.get(2).getText();
        String d = textFields.get(3).getText();
        String e = textFields.get(4).getText();
        String f = textFields.get(5).getText();
        String h = textFields.get(6).getText();
    }

    @FXML
    protected void click_okk() {
        grid_2.setVgap(8);
        grid_2.setHgap(8);
        grid_2.setOrientation(Orientation.VERTICAL);
        double aaa = parseDouble(textFields.get(0).getText());
        vjj = 1 / aaa;
        double bbb = parseDouble(textFields.get(1).getText());
        bjj = 1 / bbb;
        double ccc = parseDouble(textFields.get(2).getText());
        cjj = 1 / ccc;
        double ddd = parseDouble(textFields.get(3).getText());
        djj = 1 / ddd;
        double eee = parseDouble(textFields.get(4).getText());
        ejj = 1 / eee;
        double fff = parseDouble(textFields.get(5).getText());
        fjj = 1 / fff;
        double hhh = parseDouble(textFields.get(6).getText());
        hjj = 1 / hhh;

        for (int i = 0; i < count; i++) {
            TextField tmp2 = new TextField();
            textFields2.add(tmp2);
            grid_2.getChildren().add(tmp2);
            Label tmpLbl2 = new Label();
            lblFields2.add(tmpLbl2);
            grid_2.getChildren().add(tmpLbl2);
        }
        textFields2.get(0).setText(String.valueOf(vjj));
        lblFields2.get(0).setText("1");
        textFields2.get(1).setText(String.valueOf(bjj));
        lblFields2.get(1).setText("2");
        textFields2.get(2).setText(String.valueOf(cjj));
        lblFields2.get(2).setText("3");
        textFields2.get(3).setText(String.valueOf(djj));
        lblFields2.get(3).setText("4");
        textFields2.get(4).setText(String.valueOf(ejj));
        lblFields2.get(4).setText("5");
        textFields2.get(5).setText(String.valueOf(fjj));
        lblFields2.get(5).setText("6");
        textFields2.get(6).setText(String.valueOf(hjj));
        lblFields2.get(6).setText("7");
    }

    public void click_okk2() {
        grid_3.setVgap(8);
        grid_3.setHgap(8);
        grid_3.setOrientation(Orientation.VERTICAL);
        count1 = Integer.parseInt(text1_ok1.getText());
        t = new double[count1];
        for (int i = 0; i < count1; i++) {
            t[i] = 1.066 / (1 + ((0.066 * (0.165 / hjj)) * (1 + (hjj / fjj)) * (1 + (fjj / ejj)) * (1 + (ejj / djj)) * (1 + (djj / cjj)) * (1 + (cjj / bjj)) * (1 + (((1 / (i + 1)) + bjj) / vjj))));

            TextField tmp3 = new TextField();
            textFields3.add(tmp3);
            grid_3.getChildren().add(tmp3);
            Label tmpLbl3 = new Label();
            lblFields3.add(tmpLbl3);
            grid_3.getChildren().add(tmpLbl3);
        }
        textFields3.get(0).setText(String.valueOf(t[0]));
        lblFields3.get(0).setText("Kв1");
        textFields3.get(1).setText(String.valueOf(t[1]));
        lblFields3.get(1).setText("Kв2");
        textFields3.get(2).setText(String.valueOf(t[2]));
        lblFields3.get(2).setText("Kв3");
        textFields3.get(3).setText(String.valueOf(t[3]));
        lblFields3.get(3).setText("Kв4");
        textFields3.get(4).setText(String.valueOf(t[4]));
        lblFields3.get(4).setText("Kв5");

    }
}

Ответы (1 шт):

Автор решения: Aziz Umarov

Потому что ваша формула непонятно расчета чего даёт такой результат

public static void main(String[] args) {

    double aaa = Double.parseDouble("4.0");
    double vjj = 1 / aaa;
    double bbb = Double.parseDouble("5.0");
    double bjj = 1 / bbb;
    double ccc = Double.parseDouble("6.0");
    double cjj = 1 / ccc;
    double ddd = Double.parseDouble("7.0");
    double djj = 1 / ddd;
    double eee = Double.parseDouble("8.0");
    double ejj = 1 / eee;
    double fff = Double.parseDouble("7.0");
    double fjj = 1 / fff;
    double hhh = Double.parseDouble("7.0");
    double hjj = 1 / hhh;

    double[] t = new double[7];

    for (int i = 0; i < 7; i++) {
      t[i] =
          1.066
              / (1
                  + ((0.066 * (0.165 / hjj))
                      * (1 + (hjj / fjj))
                      * (1 + (fjj / ejj))
                      * (1 + (ejj / djj))
                      * (1 + (djj / cjj))
                      * (1 + (cjj / bjj))
                      * (1 + (((1 / (i + 1)) + bjj) / vjj))));
      System.out.println(t[i]);
    }
  }

выхлоп

0.08139485496871508
0.22422595076577165
0.22422595076577165
0.22422595076577165
0.22422595076577165
0.22422595076577165
0.22422595076577165
→ Ссылка