جار التحديث ...
جار التحديث ...

ماهي لغة Fortran, وماهي خصائصها؟

  • 0

ماهي لغة Fortran؟

تعتبر لغة فورتران واحدة من أقدم لغات البرمجة. قام بتطويرها مجموعة من المبرمجين فششي  IBM بقيادة جون باكوس John Backus 

حيث كان أول ظهور لها في سنة 1957 . وقد جاء اسم فورتران من دمج اختصار كلمتي Formula Translating لان الهدف الاساسي كان تسهيل عملية كتابة المعادلت الرياضية في الكواد البرمجية.

 

فورتران تحتل مكانة خاصة بين لغات البرمجة لانها تعتبر أول لغة برمجة عالية المستوى بالاضافة إلى اسخدامها أول مترجم على الاطلاق. قبل ظهور فوتران كان على المبرمجين أن يبرمجوا باستخدام أسمبلي والتي كانت تحتاج إلى مجهود  متعب في الكتابة أضف إلى ذلك عملية تصحيح الاخطاء التي كانت تحتاج مجهو مضاعف.

 

كان الهدف إنشاء لغة برمجة سلهلة التعلم، مناسبة للعديد من التطبيقات، غير معتمدة على آلة معينة مع التمتع بقدرات عالية في مجال الرياضيات. 

 

مع كل هذه المزايا استطاع المبرمجون أن يبرمجوا باستخدام فوتران 500 % أسرع من البرمجة باستخدام أسمبلي الشيء الذي أتاح فرصة أكبر للتفكير في حل المشاكل بدلا من كتابة الكواد وصيانتها. إذ  فورتران لها الفضل في إنشاء نظرية الترجمة في علوم الكمبيوتر.

 

لكن مع التطور ظهرت مشكلة تعدد إصدارات فوتران مما حدى المنظمة الامريكية للمعايير إلى إصدار معايير موحدة في سلنة 1966 عرفت بفورتران 66 لحقها إصدار فورتران 77 في سنة  1978 وإصدار فورتران 90 في سنة 1990مع مزيد من الاضافات والمزايا لهذه اللغة العريقة.

 

لغات أثرت على لغة فورتران :

• Speedcoding

 

لغات تأثرت بلغة فورتران :

• C

• AlGOL 58

• Basic

• PL/I

 

خصائص اللغة:

• لغة م مترجمة وإجرائية.

• غير محصورة بجهاز معين.

• التحكم بموارد التخزين والذاكرة.

• توفر تحكم قوي للتخاطب مع الهاردوير.

• قوية جد ا في التعبير عن المعادلات والتعابير والدوال الرياضية.

• كفاءة وسرعة عالية جد لتطبيقاتها، أقل فقط 20 % من كفاءة برامج الاسلمبلي.

 

 

أهم مجالت التطبيق:

فورتران قوية جد  في عدة مجالات،اهمها:

• برامج معالجة المعادلت الرياضية.

• البرامج الرياضية، والعلمية، والاحصائية، والهندسية.

 

 

مثال برمجي:

تخمين رقم بين 1 و 10.

program guess_the_number
implicit none
integer:: guess
real:: r
integer:: i, clock, count, n
integer,dimension(:),allocatable:: seed
real,parameter:: rmax = 10
! nitialize random number generator:
call random_seed(size=n)
allocate(seed(n))
call system_clock(count)
seed = count
call random_seed(put=seed)
deallocate(seed)
! ick a random number between 1 and rmax:
call random_number(r)! between 0.0 and 1.0
i = int((rmax-1.0)*r + 1.0)! between 1 and rmax
! et user guess:
write(*,'(A)') 'I''m thinking of a number between 1 and 10.'
do! oop until guess is correct
write(*,'(A)',advance='NO') 'Enter Guess: '
read(*,'(I5)') guess
if (guess==i) exit
write(*,*) 'Sorry, try again.'
end do
write(*,*) 'You''ve guessed my number!
end program guess_the_number

 

شاركنا معلومات اخرى لم تذكر (:

 

 

المصدر: كتاب مختصر دليل لغات البرمجة

إجابات المستخدمين (1)


  • شريك الإطلاق
  • عضو جديد
  • قبل أشهر 9

شكرا لم اكن اعرف انها موجودة اصلا  D:


  • 0
رد على التعليق (0)

الردود :


لا يوجد ردود بعد


سجل الدخول لاضافة رد
سجل الدخول لاضافة اجابة جديدة