Interpolacja funkcji metodą Lagrange'a

This is so fanny to look like in 2021 that I'm going to leave it


Witam, zamieszczam kolejny programik napisany w javie - do czego służy widać z tytułu posta. Jest to kolejny projekt zaliczeniowy przy czym przy jego tworzeniu najważniejsze było zrozumienie algorytmu jego działania. W związku z czym nie zamieszczam całości kodu, a jedynie kod obsługi przycisku "Oblicz":

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

//pobieram ilość elementów które powinienem pobrać z tablicy

wielkosc = jSpinner1.getValue( ).hashCode( );

x = Double.valueOf(jTextField1.getText( ));

Double iloczyn = 1D;

Double suma = 0D;

//tablice tymczasowe

Double[ ] X = new Double[wielkosc];

Double[ ] Y = new Double[wielkosc];

//wczytywanie danych z komponentu do tablicy

for (int i = 0; i < wielkosc; i++) {

Y[i] = Double.valueOf(jTable1.getModel( ).getValueAt(i, 1).toString( ));

System.out.println("i " + i + "y = " + Y[i]);

}

for (int i = 0; i < wielkosc; i++) {

X[i] = Double.valueOf(jTable1.getModel( ).getValueAt(i, 0).toString( ));

System.out.println("i " + i + "x = " + X[i]);

}

for (int i = 0; i < wielkosc; i++) {

iloczyn = 1D;

for (int k = 0; k < wielkosc; k++) {

if (i != k) {

iloczyn *= (x - X[k]) / (X[i] - X[k]);

System.out.println("x " + x);

System.out.println("k " + k + " = " + X[k]);

System.out.println("i " + i + " = " + X[i]);

System.out.println("iloczyn " + iloczyn);

}

}

suma += Y[i] * iloczyn;

System.out.println("suma " + suma);

}

jTextArea1.append("wynik" + suma +"\n");

}

Kod wygenerowany za pomocą programu: Code Generator



Share on Hacker News
Share on LinkedIn


← Home


Want to learn more?

Sign up to get a digest of my articles and interesting links via email every month.

* indicates required

Please select all the ways you would like to hear from Krzysztof Kula:

You can unsubscribe at any time by clicking the link in the footer of my emails.

I use Mailchimp as a marketing platform. By clicking below to subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp's privacy practices here.