FORTRAN – es ist eine der beliebtesten und ältesten Programmiersprachen, die häufig zum Schreiben von wissenschaftlichen und technischen Programmen verwendet wird. Eine der wichtigsten Operationen beim Arbeiten mit Arrays in Fortran besteht darin, sie zu füllen. In diesem Artikel werfen wir einen Blick auf einige nützliche Tipps und Beispiele, wie man ein Array in Fortran richtig füllt.
Die erste Möglichkeit, ein Array in Fortran zu füllen, besteht darin, den Operator zu verwenden DATA. Es ermöglicht Ihnen, die Elemente eines Arrays mithilfe einer Werteliste zu initialisieren. Geben Sie dazu einen Array-Namen, dann eine DATA-Anweisung und eine durch Kommas getrennte Liste von Werten an. Zum Beispiel:
INTEGER :: array(5)DATA array /1, 2, 3, 4, 5/
Eine andere Möglichkeit, ein Array in Fortran zu füllen, besteht darin, eine Schleife zu verwenden DO. Die DO-Schleife ermöglicht es Ihnen, einen Codeblock mehrmals auszuführen, indem Sie den Wert der Zählervariablen ändern. Um ein Array mit einer DO-Schleife zu füllen, müssen Sie ein Array definieren, die Grenzen der Schleife angeben (Start- und Endwert der Zählervariablen) und einen Schritt angeben. Innerhalb der Schleife wird ein Codeblock angegeben, der für jeden Wert der Zählervariablen ausgeführt wird. Zum Beispiel:
INTEGER :: array(5)DO i = 1, 5array(i) = iEND DO
Es ist auch möglich, ein Array in Fortran mit dem Operator zu füllen ASSIGN. Es ermöglicht Ihnen, den Elementen eines Arrays Werte zuzuweisen, indem Sie einen arithmetischen Ausdruck oder eine Funktion verwenden. Zum Beispiel:
INTEGER :: array(5)array = (/ (i**2, i=1, 5) /)
In diesem Artikel haben wir verschiedene Möglichkeiten untersucht, ein Array in Fortran zu füllen, von denen jedes seine eigenen Merkmale und Vorteile hat. Die Wahl einer bestimmten Methode hängt von den Anforderungen und Besonderheiten des Programms ab. Nachdem Sie sich mit diesen Beispielen vertraut gemacht haben, sind Sie bereit, Arrays in Fortran effizient und korrekt zu füllen.
So füllen Sie ein Array in Fortran aus: Tipps und Beispiele
1. Auffüllen eines Arrays mit Standardwerten:
program fill_arrayimplicit noneinteger, dimension(10) :: arrinteger :: iarr = 0 ! заполняем массив нулямиdo i = 1, 10print *, arr(i)end doend program fill_array
2. Ein Array mit zufälligen Werten füllen:
program fill_arrayimplicit noneinteger, dimension(10) :: arrinteger :: icall random_seed()call random_number(arr)do i = 1, 10print *, arr(i)end doend program fill_array
3. Auffüllen eines Arrays mit benutzerdefinierten Werten:
program fill_arrayimplicit noneinteger, dimension(10) :: arrinteger :: ido i = 1, 10write(*, *) "Введите значение для элемента ", iread(*, *) arr(i)end doend program fill_array
4. Füllen eines Arrays mit Elementen eines anderen Arrays:
program fill_arrayimplicit noneinteger, dimension(5) :: arr1integer, dimension(5) :: arr2integer :: iarr1 = [1, 2, 3, 4, 5]arr2 = arr1do i = 1, 5print *, arr2(i)end doend program fill_array
Jetzt, da Sie mehrere Möglichkeiten kennen, ein Array in Fortran zu füllen, können Sie das für Ihre spezielle Aufgabe am besten geeignete auswählen. Beachten Sie die Besonderheiten der Arbeit mit Arrays in Fortran und wenden Sie die richtigen Ansätze an, um Arrays in Ihren Programmen zu füllen.
Geben Sie den Datentyp und die Größe des Arrays an
Bevor Sie ein Array in Fortran füllen, müssen Sie den Datentyp und die Anzahl der Elemente des Arrays bestimmen.
Der Datentyp wird durch das Schlüsselwort definiert, das vor dem Array-Namen angegeben wird. Zum Beispiel wird für ein Integer-Array das Schlüsselwort "integer" verwendet, für Bruchzahlen "real", für Zeichendaten "character" usw.
Nachdem Sie den Datentyp angegeben haben, müssen Sie die Dimension des Arrays angeben. Die Dimension des Arrays wird bestimmt, indem die Anzahl der Elemente in jeder Dimension angegeben wird. Bei einem eindimensionalen Array wird beispielsweise die Dimension in eckigen Klammern nach dem Namen des Arrays angegeben: array(10), wobei 10 die Anzahl der Elemente des Arrays ist.
Bei mehrdimensionalen Arrays wird die Dimension für jede Dimension angegeben. Beispielsweise kann die Dimension für ein zweidimensionales Array wie folgt angegeben werden: array(10, 5), wobei 10 die Anzahl der Elemente in der ersten Dimension und 5 die Anzahl der Elemente in der zweiten Dimension ist.
Es ist wichtig, den Datentyp und die Dimension des Arrays korrekt anzugeben, um Fehler beim Auffüllen und Verarbeiten von Arraydaten zu vermeiden. Der falsch angegebene Datentyp und die Dimension können zu unvorhersehbaren Ergebnissen oder Programmausführungsfehlern führen.
Verwenden Sie Schleifen, um das Array zu füllen
Die einfachste Möglichkeit, Schleifen zu verwenden, um ein Array zu füllen, besteht darin, eine do-Schleife zu verwenden. Um beispielsweise ein Array von 10 Elementen mit Werten zwischen 1 und 10 zu füllen, können Sie den folgenden Code verwenden:
integer, dimension(10) :: Ainteger :: ido i = 1, 10A(i) = iend do
In diesem Beispiel nimmt die Variable i Werte zwischen 1 und 10 an, und jedem Element des Arrays A wird der entsprechende Wert i zugewiesen. Daher wird ein Array A mit Elementen zwischen 1 und 10 ausgegeben.
Wenn Sie ein Array auf komplexere Weise füllen möchten, können Sie komplexere Schleifen verwenden. Sie können beispielsweise verschachtelte Schleifen verwenden, um ein zweidimensionales Array wie folgt zu füllen:
integer, dimension(10, 10) :: Binteger :: i, jdo i = 1, 10do j = 1, 10B(i, j) = i + jend doend do
In diesem Beispiel durchläuft die äußere Schleife der Variablen i Werte von 1 bis 10 und die innere Schleife der Variablen j Werte von 1 bis 10 für jeden Wert i. Jedem Element des Arrays B wird die Summe der entsprechenden Werte i und j zugewiesen. Somit wird ein zweidimensionales Array B mit Elementen von 2 bis 20 ausgegeben.
Die Verwendung von Schleifen zum Füllen eines Arrays spart Zeit und vereinfacht den Code, insbesondere bei der Arbeit mit großen Arrays oder bei der Verwendung komplexer Füllmuster.
Füllen Sie das Array mit einem Zufallszahlengenerator aus
Sie können die Funktion RANDOM_NUMBER verwenden, um ein Array in Fortran mit einem Zufallszahlengenerator zu füllen. Diese Funktion erzeugt eine zufällige reelle Zahl im Bereich von 0 bis 1.
Beispiel für das Füllen eines eindimensionalen Arrays mit Zufallszahlen:
program random_array_exampleimplicit noneinteger :: i, nreal :: random_numreal, dimension(10) :: arrcall random_seed() ! Инициализация генератора случайных чиселdo i = 1, 10call random_number(random_num)arr(i) = random_numend doprint *, "Массив случайных чисел:"do i = 1, 10print *, arr(i)end doend program random_array_example
Beispiel für das Füllen eines zweidimensionalen Arrays mit Zufallszahlen:
program random_2d_array_exampleimplicit noneinteger :: i, j, nrows, ncolsreal :: random_numreal, dimension(3, 4) :: arrcall random_seed() ! Инициализация генератора случайных чиселnrows = 3ncols = 4do i = 1, nrowsdo j = 1, ncolscall random_number(random_num)arr(i, j) = random_numend doend doprint *, "Двумерный массив случайных чисел:"do i = 1, nrowsdo j = 1, ncolsprint *, arr(i, j)end doend doend program random_2d_array_example
Sie können die Größe der n- , nrows- und ncols-Arrays an Ihre Bedürfnisse anpassen. Vergessen Sie auch nicht, das Modul ISO_FORTRAN_ENV anzuschließen, um mit der Funktion RANDOM_NUMBER zu arbeiten.
Jetzt wissen Sie, wie Sie das Array mit dem Zufallszahlengenerator in Fortran richtig füllen können. Viel Erfolg bei Ihrer Programmierung!