Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.82 KB | None | 0 0
  1. package interpolacjanewtona;
  2. import java.util.Scanner;
  3. public class InterpolacjaNewtona {
  4.  
  5.  
  6. public static void main(String[] args) {
  7.  
  8. int n;
  9. double silnia = 1.0,a=1.0;
  10. double xx,h,wj = 1.0;
  11. double x,y,Wx=0;
  12. System.out.println("Podaj liczbe wezłow");
  13. Scanner n1 = new Scanner(System.in);
  14. xx=3.0;
  15. n =n1.nextInt();
  16. double [] tabx=new double[n];
  17. double [] taby=new double[n];
  18.  
  19. for(int i=0;i<n;i++)
  20. {
  21. System.out.print("Podaj zmienne X: ");
  22. Scanner x1 = new Scanner(System.in);
  23. x =x1.nextFloat();
  24. tabx[i]= x;
  25. System.out.print("Podaj zmienne Y: ");
  26. Scanner y1 = new Scanner(System.in);
  27. y =y1.nextFloat();
  28. taby[i]= y;
  29. }
  30. double [][] tab = new double [tabx.length][tabx.length];
  31.  
  32. for(int i=0;i<tabx.length-1;i++)
  33. {
  34. for(int j=0; j<tabx.length-1-i;j++)
  35. {
  36. tab[j][i+1]=((tab[j+1][i]-tab[j][i]));
  37. System.out.println(" Wartosc : "+tab[j][i+1]);
  38. }
  39. System.out.println(" ");
  40. // System.out.println(" Roznica pozadana: " + tab[0][i+1]);
  41. System.out.println(" ");
  42. h=tabx[2]-tabx[1];
  43.  
  44. a++;
  45.  
  46. silnia=silnia*a;
  47. // System.out.println("Silnia: "+silnia);
  48. wj *= (xx - tabx[i]);
  49. // System.out.println("wj: "+ wj);
  50. double pod = (silnia*Math.pow(h, a)*2);
  51. // System.out.println("wartosc pod: "+pod);
  52. //(-4,-1011) (-2,-73) (0,1) (2,-21) (4,-523)
  53.  
  54. Wx += ((wj)*(tab[i+1][0]))/(pod);
  55. // System.out.println("wynik = "+Wx);
  56. }
  57. Wx=Wx+taby[0];
  58. System.out.println("wynik = "+Wx);
  59.  
  60. }
  61.  
  62.  
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement