Nächste Seite: Aufgabe 9
Aufwärts: Lösungen
Vorherige Seite: Aufgabe 7
  Inhalt
PROGRAM C_04
IMPLICIT NONE
REAL :: p(0:2)=1.0, q(0:1)=1.0
REAL, ALLOCATABLE :: pxq(:)
INTEGER :: i, s1, s2
INTERFACE
SUBROUTINE multi (m, n, p, q, pxq)
IMPLICIT NONE
REAL :: p(0:), q(0:), pxq(0:)
INTEGER :: m, n
END SUBROUTINE
END INTERFACE
s1 = SIZE(p)-1
s2 = SIZE(q)-1
ALLOCATE (pxq(0:s1+s2))
CALL multi(s1,s2,p,q,pxq)
write (*,*) pxq
END PROGRAM
SUBROUTINE multi (m, n, p, q, pxq)
!
! (a0 + b1.x + b2.x^2) . (b0 + b1.x + b2.x^2) =
! a0.b0 +
! (a0.b1 + a1.b0).x +
! (a0.b2 + a1.b1 + a2.b0).x^2
! + a1.b2 + a2.b1).x^3
! + a2.b2.x^4
!
IMPLICIT NONE
REAL :: p(0:), q(0:), pxq(0:)
INTEGER :: i, j, l, m, n, neu
pxq = 0.0
DO i = 0, m
DO j = 0, n
pxq(i+j) = pxq(i+j) + p(i)*q(j)
ENDDO
END DO
END SUBROUTINE
Reinfried O. Peter
2001-09-07