Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // n nodes, n values, n. Find Newton polynomial value at a given x
- package divided.difference;
- import java.util.Scanner;
- /**
- *
- * @author Nikodem
- */
- public class DividedDifference {
- //======================================
- // ** Main
- //======================================
- public static void main(String[] args) {
- double t;
- double result;
- //======================================
- // ** Get data from user
- //======================================
- System.out.println("Enter number of values: ");
- Scanner sc = new Scanner(System.in);
- int n = sc.nextInt();
- // Initialize vars
- double[] x = new double[n];
- double[] y = new double[n];
- System.out.println("Enter numbers: ");
- for(int i=0; i<n; i++){
- x[i] = sc.nextDouble();
- }
- System.out.println("Enter values: ");
- for(int i=0; i<n; i++){
- y[i] = sc.nextDouble();
- }
- System.out.println("Enter value to calculate: ");
- t = sc.nextDouble();
- double[][] s = new double[n][n];
- for(int i=0;i<n;i++){
- s[i][0] = y[i];
- }
- for(int j=1;j<n;j++){
- for(int i=j;i<n;i++){
- s[i][j] = ((t-x[i-j])*s[i][j-1]+(x[i]-t)*s[i-1][j-1])/(x[i]-x[i-j]);
- }
- }
- result = s[0][n-1];
- System.out.println("Result: "+s[0][n-1]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement