Monday, December 25, 2017

Sume pe coloane într-o matrice

       Se consideră o matrice A cu m linii și n coloane și se pune problema caculului a n sume SUMCOL(J) cu j=1,2,3, ..., n pentru elementele de pe fiecare coloană.

         SUBROUTINE ADMAT (A,B,C,M,N)
         DO 10 J=1,N
         SUMCOL(J)=0.
         DO 10 I=1,M
10     SUMCOL(J))=SUMCOL(J)+A(I,J)
         RETURN
         END

sau ceva mai îmbunătățit din cauză că se referă o variab ilă elementară și nu una indexată ceea ce reduce numărul de cicluri mașină, numai că apar atribuiri în plus:

         SUBROUTINE ADMAT (A,B,C,M,N)
         DO 20 J=1,N
         SUMCOLJ=0.
         DO 10 I=1,M
10     SUMCOLJ=SUMCOLJ+A(I,J)
         SUMCOL(J)=SUMCOLJ
20     CONTINUE
         RETURN
         END
Sume pe coloane în matrice se fac în multe calcule statistice, dar rezultatele apar într-o linie alăturată din matrice, m+1.
         SUBROUTINE ADMAT (A,B,C,M,N)
         DO 20 J=1,N
         SUMCOLJ=0.
         DO 10 I=1,M
10     SUMCOLJ=SUMCOLJ+A(I,J)
         A(M+1,J)=SUMCOLJ
20     CONTINUE

         RETURN
         END


(26 decembrie 2017)                    

No comments:

Post a Comment