Advertisement
Guest User

Untitled

a guest
Apr 26th, 2017
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.81 KB | None | 0 0
  1. package internewtonrp;
  2.  
  3. import java.util.Scanner;
  4.  
  5. public class InterNewtonRP {
  6.  
  7. public static void wczytajDane(double[] tablica) {
  8. Scanner scanner = new Scanner(System.in);
  9. for (int i = 0; i < 5; i++) {
  10. System.out.println("Podaj " + (i + 1) + " element : ");
  11. tablica[i] = scanner.nextInt();
  12. }
  13. }
  14.  
  15. public static double Newton_InterpolationRP(double[] tablicax, double[] tablicay, double podstawowyX) {
  16. int index1, index2;
  17. double H, pomocnicza, temp, wynik = 0;
  18. H = tablicax[1] - tablicax[0];
  19.  
  20. for (index2 = 0; index2 < 5; index2++) {
  21. for (index1 = 4; index1 > index2; index1--) {
  22. tablicay[index1] = (tablicay[index1] - tablicay[index1 - 1]);
  23. }
  24. }
  25. for (index1 = 4; index1 >= 0; index1--) {
  26. temp = 1;
  27. for (index2 = 0; index2 < index1; index2++) {
  28. pomocnicza = podstawowyX - tablicax[index2];
  29. temp *= pomocnicza;
  30. }
  31. temp *= tablicay[index2] / (silnia(index2) * Math.pow(H, index2));
  32. wynik = wynik + temp;
  33. }
  34.  
  35. return wynik;
  36. }
  37. private static int silnia(int i) {
  38. if (i < 1) {
  39. return 1;
  40. } else {
  41. return i * silnia(i - 1);
  42. }
  43. }
  44. public static void main(String[] args) {
  45. double podstawowyX = 3;
  46. // Dane do programu : x= -4 -2 0 2 4 y= 537 37 1 45 553
  47. double[] mojeX = new double[5];
  48. double[] mojeY = new double[5];
  49. System.out.println("Elementy tablicy X: ");
  50. wczytajDane(mojeX);
  51. System.out.println("Elementy tablicy Y: ");
  52. wczytajDane(mojeY);
  53. System.out.println(Newton_InterpolationRP(mojeX, mojeY, podstawowyX));
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement