آرایه ها Arrays در فرترن
یکی از مهمترین ساختارهای داده در برنامه نویسی مهندسی آرایه ها هستند مخصوصاً وقتی با تعداد زیادی عدد در نقاط مختلف کار می کنیم. ساختار آرایه ها مانند انواع دیگر داده ها می باشد فقط تعداد داده ها مشخص می گردد. البته در شرایطی که می خواهیم که تعداد بصورت دینامیک اختصاص داده شود، تعداد را مشخص نمی کنیم.
type array_name({lower bound in nth dimention:Upper bound in nth dimention})
برای مثال فرض کنید که می خواهید داده های دمای نقاط در یک شبکه را ذخیره کنید، نوع داده را اعداد حقیقی در نظر می گیریم. شماره نقاط در طول از 50 تا 70 می باشد و در عرض از 1 تا 20 است:
REAL:: temperature(50:70, 1:20)
یا
REAL:: temperature(50:70, 20)
حد پایین آرایه بصورت پیش فرض از یک شروع می شود. آرایه در فرترن 77 می تواند تا 7 بعد داشته باشد. آرایه ها بترتیب ستون در حافظه قرار می گیرند و اگر بخواهیم با دستور DO به آرایه ها دسترسی داشته باشیم بهتر است که حلقه شمارنده ستونها داخل حلقه شمارنده سطر ها قرار گیرد (برای سرعت دسترسی بالاتر). دسترسی به هریک از اجزائ آرایه ها با استفاده از اندیسهای آن صورت می گیرد، البته دستوراتی در فرترن 90 وجود دارد که کار با آرایه ها را سریعتر و کارآمدتر کرده است و در صورتی که چنین دستوراتی وجود داشته باشد، از آنها استفاده کنید. مخصوصاً اگر برای استفاده از کامپیوترهای چند پردازنده ای برنامه نویسی می کنید.
در مثال بالا فرض کنید که دمای نقطه ای با طول 55 و عرض 12 را بیابیم و در متغیر temp قرار دهیم و همچنین دمای نقطه 56 و 13 را برابر 400 کلوین قرار دهیم.
temp = temperature(55,12)
temperature(56,13) = 400.0
برای خواندن یا چاپ آرایه ها می توان اندیسها را نادیده گرفت تا عمل مورد نظر روی کل آرایه انجام گیرد. برای مثال برای نمایش کل آرایه temperatureروی صفحه نمایش از دستور زیر استفاده کرد.
WRITE(*,*) temperature
این نمایش در صورتی که تعداد اعضاء در یک سطر جا نگیرد کمی گیج کننده است.