2 Stimmen

Fehler bei Verwendung der intrinsischen Funktion SUM

Wenn ich den g95-Compiler verwende, erhalte ich einen Fehler, der besagt:

ERROR: Procedure attribute conflicts with INTENT attribute in 'quantityarray'

Ich habe versucht, die Gesamtsumme des Arrays zu ermitteln. Hier ist die Subroutine, in der dieser Fehler auftritt:

SUBROUTINE findTotals(pricearray,quantityarray,totalprice, totalquantity)

INTEGER, INTENT(IN)::quantityarray
REAL, INTENT(IN):: pricearray
INTEGER, INTENT(OUT)::totalquantity
REAL, INTENT(OUT)::totalprice

totalquantity = SUM(quantityarray)
totalprice = SUM(pricearray)

END SUBROUTINE

Vielen Dank für Ihre Zeit.

2voto

Rook Punkte 57113
program SummingAnArray
implicit none
integer, dimension(10) :: array=(/ (i, i=1,10) /)
integer :: i, Total

call VectorSum(array,Total)
print *,Total
read(*,*)

contains
    !===================================================
    subroutine VectorSum(Vector,Total)
    implicit none
    integer, intent(in), dimension(:) :: Vector
    integer, intent(out) :: Total

    Total = SUM(Vector)
    end subroutine VectorSum
    !===================================================
end program SummingAnArray

Ist das vielleicht das, was Sie erreichen wollten?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X