फ़ोरट्रान

मुक्त ज्ञानकोश विकिपीडिया से
(फोर्ट्रान से अनुप्रेषित)
नेविगेशन पर जाएँ खोज पर जाएँ

फोरट्रान (अंग्रेज़ी: Fortran/पहले FORTRAN) एक प्रोग्रामन भाषा है जिसका विकास 1950 के दशक में हुआ था। तब से लेकर अबतक इस भाषा के कई संस्करण निकल चुके हैं यथा - FORRTAN66, Fortran77, Fortran90 और Fortran95। इसका विकास आईबीएम में सूत्र अनुकूटक (Formula Translater) के रूप में हुआ था। आज यह गणकीय तरल यांत्रिकी में बहुत प्रयुक्त होता है।

इसके कई कंपाइलर लिखे गए हैं, जैसे आईबीएम (मूल), एचपी, जीएनयू तथा अन्य कई। इसकी एक पंक्ति में 72 से अधिक वर्ण नहीं लिखे जा सकते हैं। पंक्ति के अंत में अर्धविराम नहीं लगता है। इस संदर्भ में इसकी तुलना C/C++ जैसी भाषाओं से की जा सकती है जिसमें अनुदेश खत्म होने के बाद एक अर्धविराम लगाना आवश्यक होता है।

फोर्ट्रान के विभिन्न संस्करण

  • 1956. Fortran I
  • 1959. Fortran III
  • 1962. Fortran IV
  • 1964. Fortran V
  • 1965। standard ECMA Fortran[२]
  • 1966. Fortran 66 (USASI X3.9-1966)[३]
  • 1991. Fortran 90 (ISO/IEC 1539:1991 फिर ANSI X3.198-1992)[६]
  • 1992 IEEE 1003.9-1992, Fortran 77 of the POSIX standard[७].
  • 1994 ISO/IEC 1539-2:1994
  • 1997. Fortran 95 (ISO/CEI 1539-1:1997)[८]
  • 1999 ISO/IEC 1539-3:1999
  • 2004. Fortran 2003 (ISO/CEI 1539-1:2004)[९]
  • 2010. Fortran 2008 (ISO/CEI 1539-1:2010)[१०].
  • अगला संस्करण « Fortran 2015 », होगा, जो मामूली परिवर्तनों के साथ होगा।[११] · [१२].

फोरट्रान कोड के उदाहरण

निम्नलिखित प्रोग्राम, इन्टरैक्टिव रूप से इन्टर किये गये डेटा का औसत (average) निकालता है। इस प्रोग्राम में Fortran 90 के दो विशेष गुणों- डायनेमिक मेमोरी अल्लोकेशन तथा अर्रे-आधारित-संक्रियाएँ को दर्शाता है। ध्यान दीजिये कि इसमें DO लूप तथा IF/THEN का उपयोग करके अर्रे (array) को किस प्रकार परिवर्तित किया गया है।

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


  1. साँचा:Article
  2. साँचा:pdf Standard ECMA Fortran स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  3. साँचा:pdf Standard Fortran 66 स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  4. साँचा:pdf Standard Fortran 77 स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  5. साँचा:article
  6. साँचा:pdf Standard Fortran 90साँचा:category handlerसाँचा:main otherसाँचा:main other[dead link]
  7. स्क्रिप्ट त्रुटि: "citation/CS1" ऐसा कोई मॉड्यूल नहीं है।
  8. साँचा:pdf Standard Fortran 95 स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  9. साँचा:pdf Standard Fortran 2003 स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  10. साँचा:pdf Standard Fortran 2008 स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।
  11. स्क्रिप्ट त्रुटि: "citation/CS1" ऐसा कोई मॉड्यूल नहीं है।
  12. साँचा:pdf F2015 Working Document स्क्रिप्ट त्रुटि: "webarchive" ऐसा कोई मॉड्यूल नहीं है।, J3, साँचा:date