Advertisement
kikosiak

Untitled

Nov 27th, 2019
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. class Rozniczki {
  2. def metodaTaylora(p:Int,x:Array[Double],y:Array[Double]): Unit = {
  3. val y1: Array[Double] = new Array[Double](6)
  4. val y2: Array[Double] = new Array[Double](5)
  5. val y3: Array[Double] = new Array[Double](4)
  6. val y4: Array[Double] = new Array[Double](3)
  7. val y5: Array[Double] = new Array[Double](2)
  8. val y6: Array[Double] = new Array[Double](1)
  9. var tmp:Double = 0
  10. var fx:Double = 0
  11. println()
  12. for(i<-0 to 6)
  13. println("x = "+x(i)+" y = "+y(i))
  14. println("")
  15. val yq=y.reverse
  16. for(i<-0 until 6){
  17. tmp=yq(i)-yq(i+1)
  18. y1(i)=tmp
  19. }
  20. for(i<-0 until 5){
  21. tmp=y1(i)-y1(i+1)
  22.  
  23. y2(i)=tmp
  24. }
  25. for(i<-0 until 4){
  26. tmp=y2(i)-y2(i+1)
  27. y3(i)=tmp
  28. }
  29. for(i<-0 until 3){
  30. tmp=y3(i)-y3(i+1)
  31. y4(i)=tmp
  32. }
  33. for(i<-0 until 2){
  34. tmp=y4(i)-y4(i+1)
  35. y5(i)=tmp
  36. }
  37. for(i<-0 until 1){
  38. tmp=y5(i)-y5(i+1)
  39.  
  40. y6(i)=tmp
  41. }
  42.  
  43. fx=(y1.head+(y2.head/2)+(y3.head/3)+(y4.head/4)+(y5.head/5)+(y6.head/6))/0.2
  44. println("f(x) = "+fx)
  45.  
  46. }
  47. }
  48. object Rozniczki extends App{
  49. val p:Int=7
  50. val x:Array[Double] = Array(1.4,1.6,1.8,2,2.2,2.4,2.6)
  51. val y:Array[Double] = Array(0.146128,0.20412,0.255273,0.30103,0.342423,0.380211,0.417999)
  52. val obj = new Rozniczki
  53. obj.metodaTaylora(p,x,y)
  54. }
  55.  
  56.  
  57.  
  58. --------------wynik---------------
  59. x = 1.4 y = 0.146128
  60. x = 1.6 y = 0.20412
  61. x = 1.8 y = 0.255273
  62. x = 2.0 y = 0.30103
  63. x = 2.2 y = 0.342423
  64. x = 2.4 y = 0.380211
  65. x = 2.6 y = 0.417999
  66.  
  67. f(x) = 0.2041089999999985
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement