Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Rozniczki {
- def metodaTaylora(p:Int,x:Array[Double],y:Array[Double]): Unit = {
- val y1: Array[Double] = new Array[Double](6)
- val y2: Array[Double] = new Array[Double](5)
- val y3: Array[Double] = new Array[Double](4)
- val y4: Array[Double] = new Array[Double](3)
- val y5: Array[Double] = new Array[Double](2)
- val y6: Array[Double] = new Array[Double](1)
- var tmp:Double = 0
- var fx:Double = 0
- println()
- for(i<-0 to 6)
- println("x = "+x(i)+" y = "+y(i))
- println("")
- val yq=y.reverse
- for(i<-0 until 6){
- tmp=yq(i)-yq(i+1)
- y1(i)=tmp
- }
- for(i<-0 until 5){
- tmp=y1(i)-y1(i+1)
- y2(i)=tmp
- }
- for(i<-0 until 4){
- tmp=y2(i)-y2(i+1)
- y3(i)=tmp
- }
- for(i<-0 until 3){
- tmp=y3(i)-y3(i+1)
- y4(i)=tmp
- }
- for(i<-0 until 2){
- tmp=y4(i)-y4(i+1)
- y5(i)=tmp
- }
- for(i<-0 until 1){
- tmp=y5(i)-y5(i+1)
- y6(i)=tmp
- }
- fx=(y1.head+(y2.head/2)+(y3.head/3)+(y4.head/4)+(y5.head/5)+(y6.head/6))/0.2
- println("f(x) = "+fx)
- }
- }
- object Rozniczki extends App{
- val p:Int=7
- val x:Array[Double] = Array(1.4,1.6,1.8,2,2.2,2.4,2.6)
- val y:Array[Double] = Array(0.146128,0.20412,0.255273,0.30103,0.342423,0.380211,0.417999)
- val obj = new Rozniczki
- obj.metodaTaylora(p,x,y)
- }
- --------------wynik---------------
- x = 1.4 y = 0.146128
- x = 1.6 y = 0.20412
- x = 1.8 y = 0.255273
- x = 2.0 y = 0.30103
- x = 2.2 y = 0.342423
- x = 2.4 y = 0.380211
- x = 2.6 y = 0.417999
- f(x) = 0.2041089999999985
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement