فورتران

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
فورتران (بالإنجليزية: Fortran)
Fortran acs cover.jpeg

التصنيف متعددة النماذج: أمرية (إجرائية، مهيكلة، كائنية التوجه) عمومية
ظهرت في 1954
صممها جون باكوس
التطوير
المطور جون باكوس، IBM
آخر إصدار ISO/IEC 1539-1:2010 (عام 2008)
متفرقات
امتدادات الملفات .f, .for, .f90, .f95

'فورتران' (بالإنجليزية: Fortran) هي لغة برمجة متعددة الاستخدام واختصار لكلمتين في الإنجليزية معناها ترجمة المعادلات (FORmula TRANslation).

الانشاء[عدل]

في عام 1954 خرج جون باكوس John Backus مع مجموعة من شركة IBM بلغة الفورتران وكانت أولي لغات البرمجة ذوات المستوى العالي وتستخدم أساسا في التحليلات العددية وفي الحوسبة العلمية.

مميزاتها[عدل]

وتتميز هذه اللغة بالبساطة والإيجاز والمقدرة على التفاعل الحسابي حتى ان شعارها هو شعار الدالة.والاستدامة بالتطوير إذ أنها من أبرز اللغات التي بقيت حية لأكثر من نصف قرن.

صورها[عدل]

لقد ظهرت العديد من صور تلك اللغة كان اخرها fortran 2008 تحتوي آخر إصدارات للغة الفورتران علي مجموعة من الأوامر التي تفسر نفسها بنفسها مثل اقرأ READ واكتب WRITE و'إذهب إلي GO TO وتوقف STOP وتنفذ برامج الفورتران تبعا لتسلسل الجمل بها. ولكن تكمن صعوبتها في تحديد الخطأ عند حدوثه حيث من يستوجب عليك تتبع الكود من اوله مما يزيد الامر صعوبة.

التعليم[عدل]

لا زالت تدرس في اغلب الكليات العلمية والهندسية كمثال يتم حاليا تدريسها في جميع كليات الهندسة في العراق.

روابط خارجية[عدل]

يمكن تحميل 'fortran90' من 4shared http://www.4shared.com/rar/gxKdRcFM/fortran_90_software.html?cau2=403tNull&ua=LINUX

أمثلة برمجية[عدل]

البرنامج التالي يحسب قيمة المتوسط للبيانات التي تمت إدخالها:

program average

  ! Read in some numbers and take the average
  ! As written, if there are no data points, an average of zero is returned
  ! While this may not be desired behavior, it keeps this example simple

  implicit none

  real, dimension(:), allocatable :: points
  integer                         :: number_of_points
  real                            :: average_points=0., positive_average=0., negative_average=0.

  write (*,*) "Input number of points to average:"
  read  (*,*) number_of_points

  allocate (points(number_of_points))

  write (*,*) "Enter the points to average:"
  read  (*,*) points

  ! Take the average by summing points and dividing by number_of_points
  if (number_of_points > 0) average_points = sum(points) / number_of_points

  ! Now form average over positive and negative points only
  if (count(points > 0.) > 0) then
     positive_average = sum(points, points > 0.) / count(points > 0.)
  end if
  if (count(points < 0.) > 0) then
     negative_average = sum(points, points < 0.) / count(points < 0.)
  end if

  deallocate (points)

  ! Print result to terminal
  write (*,'(a,g12.4)') 'Average = ', average_points
  write (*,'(a,g12.4)') 'Average of positive points = ', positive_average
  write (*,'(a,g12.4)') 'Average of negative points = ', negative_average

end program average

أنظر أيضاً[عدل]

وصلات خارجية[عدل]

Computer.svg
هذه بذرة مقالة عن الحاسوب أو العاملين في هذا المجال بحاجة للتوسيع. شارك في تحريرها.