# Metti f,g, t1, t2, relativi al caso che ti interessa studiare, e x1,x2,
# y1,y2 della parte di piano in cui vuoi rappresentare la curva
f <- function(t) t
g <- function(t) t^3-2*t
t1 <- -2; t2 <- 2
L <- function(F,G,A,B,N) { d<- (B-A)/N; L<- 0; for(i in 1:N)
     L <- L+sqrt((F(A+d*(i-1))-F(A+d*i))^2+(G(A+d*(i-1))-G(A+d*i))^2); L }
# Salta questa parte se non vuoi il grafico
x1 <- -4; x2 <- 4; y1 <- -4; y2 <- 4
plot(c(x1,x2),c(y1,y2),type="n",xlab="", ylab="", asp=1)
abline(h=axTicks(2),v=axTicks(1),lty=3,col="grey50")
punti <- 2001
t <- seq(t1,t2,(t2-t1)/punti); lines(f(t),g(t),col="brown",lwd=2)
# Fine della parte saltabile
L(f,g,t1,t2,2)
L(f,g,t1,t2,8)
L(f,g,t1,t2,16)
L(f,g,t1,t2,32)
L(f,g,t1,t2,2^10)
L(f,g,t1,t2,2^11)
# Se vuoi anche vedere, sul grafico, le poligonali approssimanti ...
L1 <- function(F,G,A,B,N) { d<- (B-A)/N; L<- 0; for(i in 1:N) {
      L <- L+sqrt((F(A+d*(i-1))-F(A+d*i))^2+(G(A+d*(i-1))-G(A+d*i))^2);
      lines( c( F(A+d*(i-1)),F(A+d*i) ), c( G(A+d*(i-1)),G(A+d*i) ), col="blue" );
      points( c( F(A+d*(i-1)),F(A+d*i) ), c( G(A+d*(i-1)),G(A+d*i) ), pch=20, col="red" )}; L }
L1(f,g,t1,t2,2)
L1(f,g,t1,t2,4)
L1(f,g,t1,t2,8)