Buenas, estoy haciendo un código en Fortran para ajuste lineal por método de mínimos cuadrados. La cuestión es que tengo un problema en el desarrollo de las sumatorias:
PROGRAM AJUSTE LINEAL
        DIMENSION DATOS(1000)
        WRITE(*,*)'Ingresar n£mero de pares (x,y) de valores'
        READ(*,*)i
        N=i*2
        OPEN(UNIT=1,FILE='sdf.dat')
           DO A=1,(i)
              WRITE(*,*)'x',A
              READ(*,*)n
              WRITE(1,*)n
              WRITE(*,*)'y',A
              READ(*,*)m
              WRITE(1,*)m
           ENDDO
        CLOSE(UNIT=1)
C--SUMATORIA x^2
        OPEN(UNIT=1,FILE='sdf.dat')
           DO K=1,N
              READ(1,*)DATOS(K)
           ENDDO
        B=0
        M=N+2
           DO K=1,M,2
             B=B+(DATOS(K)**2)
           ENDDO
        CLOSE(UNIT=1)
           WRITE(*,*)'Sumatoria x^2:',B
C--SUMATORIA x
        OPEN(UNIT=1,FILE='sdf.dat')
           DO K=1,N
              READ(1,*)DATOS(K)
           ENDDO
        C=0
        M=N+2
           DO K=1,M,2
             C=C+(DATOS(K))
           ENDDO
        CLOSE(UNIT=1)
        WRITE(*,*)'Sumatoria x:',C
C--SUMATORIA y
        OPEN(UNIT=1,FILE='sdf.dat')
           DO K=1,N
              READ(1,*)DATOS(K)
           ENDDO
        D=0
        M=N+2
           DO K=2,M,2
             D=D+(DATOS(K))
           ENDDO
        CLOSE(UNIT=1)
        WRITE(*,*)'Sumatoria y:',D
C--SUMATORIA xy
        OPEN(UNIT=1,FILE='sdf.dat')
           DO K=1,N
              READ(1,*)DATOS(K)
           ENDDO
           DO K=1,N,2
              E=E+(DATOS(K)*DATOS(K+1))
           ENDDO
        CLOSE(UNIT=1)
        WRITE(*,*)'Sumatoria xy:',E        
        END
Si lo prueban van a ver que las sumatorias de y y de xy no las hace con todos los datos, excluye a los últimos. ¿Por qué?
Salud(2)!