Thursday, January 4, 2018

Interschimb de variabile

Interschimbul de variabile este echivalentul cu interschimbul conținutului a două borcane A și B, borcanul A care conține ulei și celălalt, borcanul B, care conține apă. În final trebuie ca borcanul B să conțină ulei și borcanul A să conțină apă. Evident este nevoie de un al treilea vas temporar, TEMP care va prelua conținutul borcanului A. O dată golit borcanul A, în el va fi vîrsat borcanul B. Vasul temporar va fi vărsat în borcanul B golit deja de apă.
         SUBROUTINE SCHIMB(A,B)
         TEMP=A
         A=B
         B=TEMP
         RETURN
         END
Aceeași operație se realizează și pentru vectorii X și Y de câte N componente, obținând subprogramul:
         SUBROUTINE SCHVEC(X,Y,N)
         DO  10 I=1,N
         TEMP=A(I)
         A(I)=B(I)
         B(I)=TEMP
10     CONTINUE
         RETURN
         END
Pentru interschimbul elementelor din două matrice A și B fiecare având N linii și M coloane se va scrie subprogramul:

         SUBROUTINE SCHMAT(A,B,M,N)
         MAXAIJ=A(1,1)
         DO  10 I=1,N
         DO  10 J=1,N
         TEMP=A(I,J)
         A(I,J)=B(I,J)
         B(I,J)=TEMP
10     CONTINUE
         RETURN
         END
Aici se vede cum se obține generalizarea de la interschimb de elemente, la interschimb de vectori și apoi la interschimb de matrice, continuarea fiind aceeași pentru masivele multidimensionale.


(04 ianuarie 2017)

No comments:

Post a Comment