Gibt es eine intrinsische in Fortran, die ein Array mit einer Folge von Nummern von a bis b, ähnlich wie Python range()
erzeugen eine Folgeanordnung in Fortran
>>> range(1,5)
[1, 2, 3, 4]
>>> range(6,10)
[6, 7, 8, 9]
erzeugt?
Gibt es eine intrinsische in Fortran, die ein Array mit einer Folge von Nummern von a bis b, ähnlich wie Python range()
erzeugen eine Folgeanordnung in Fortran
>>> range(1,5)
[1, 2, 3, 4]
>>> range(6,10)
[6, 7, 8, 9]
erzeugt?
Nein, gibt es nicht.
Sie können jedoch ein Array mit einem Konstruktor initialisieren, die die gleiche Sache tut,
program arraycons
implicit none
integer :: i
real :: a(10) = (/(i, i=2,20, 2)/)
print *, a
end program arraycons
Ist das nicht das Gleiche wie in Bereich() oben? Ich sehe den Unterschied nicht (abgesehen von <= und <, und der Tatsache, dass Fortran keine dynamische Sprache ist). Vielleicht habe ich die Frage falsch verstanden (oder die Antwort). – Rook
@Rook: Es ist ein Array-Konstruktor mit einer impliziten do-Schleife, keine intrinsische. – janneb
A-ah, ja. Ich habe diesen Teil in der Frage völlig vermisst. – Rook
Wie range() funktioniert Python? – Rook
@Rook: bearbeitete Frage –