फोरट्रान में कार्यक्रम कैसे करें (चित्रों के साथ)

विषयसूची:

फोरट्रान में कार्यक्रम कैसे करें (चित्रों के साथ)
फोरट्रान में कार्यक्रम कैसे करें (चित्रों के साथ)

वीडियो: फोरट्रान में कार्यक्रम कैसे करें (चित्रों के साथ)

वीडियो: फोरट्रान में कार्यक्रम कैसे करें (चित्रों के साथ)
वीडियो: एवरनोट के साथ कार्य करना | ईपी 24 | नोट की नकल बनाना 2024, अप्रैल
Anonim

बहुत से लोग फोरट्रान को एक पुरातन और "मृत" प्रोग्रामिंग भाषा के रूप में देखते हैं। हालांकि, अधिकांश वैज्ञानिक और इंजीनियरिंग कोड फोरट्रान में लिखे गए हैं। जैसे, F77 और F90 में प्रोग्रामिंग अधिकांश तकनीकी प्रोग्रामर के लिए एक आवश्यक कौशल बना हुआ है। इसके अलावा, नवीनतम फोरट्रान मानक (2003, 2008, 2015) प्रोग्रामर को ओओपी (ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग) जैसी सभी आधुनिक भाषा सुविधाओं का उपयोग करते हुए, न्यूनतम प्रयास के साथ अत्यधिक कुशल कोड लिखने की अनुमति देते हैं। फोरट्रान "फॉर्मुला ट्रांसलेशन" के लिए एक संक्षिप्त शब्द है, और ग्राफिक्स या डेटाबेस अनुप्रयोगों के बजाय गणितीय और संख्यात्मक अनुप्रयोगों के लिए सबसे उपयुक्त है। अधिकांश फोरट्रान कोड मेन्यू या जीयूआई इंटरफेस के बजाय फाइल या कमांड लाइन से टेक्स्ट इनपुट लेते हैं।

कदम

भाग 1 4 का: एक साधारण प्रोग्राम लिखना और संकलित करना

फोरट्रान हैलो वर्ल्ड प्रोग्राम सही लिखें
फोरट्रान हैलो वर्ल्ड प्रोग्राम सही लिखें

चरण 1. एक "हैलो वर्ल्ड" प्रोग्राम लिखें।

यह आमतौर पर किसी भी भाषा में लिखने वाला पहला प्रोग्राम है, और यह स्क्रीन पर "हैलो वर्ल्ड" प्रिंट करता है। किसी भी टेक्स्ट एडिटर में निम्नलिखित कोड लिखें और इसे helloworld.f के रूप में सेव करें। ध्यान दें कि प्रत्येक पंक्ति के सामने ठीक 6 स्थान होने चाहिए।

कार्यक्रम helloworld निहित कोई नहीं चरित्र*13 hello_string hello_string = "नमस्ते, दुनिया!" लिखें (*, *) hello_string अंत कार्यक्रम helloworld

टिप: फोरट्रान 77 तक के फोरट्रान के संस्करणों में केवल रिक्त स्थान आवश्यक हैं। यदि आप एक नए संस्करण का उपयोग कर रहे हैं, तो आप रिक्त स्थान छोड़ सकते हैं। f95 के साथ नए संस्करण से प्रोग्राम संकलित करें, f77 नहीं; केवल.f के बजाय फ़ाइल एक्सटेंशन के रूप में.f95 का उपयोग करें।

चरण 2. कार्यक्रम संकलित करें।

ऐसा करने के लिए, कमांड लाइन में f77 helloworld.f टाइप करें। यदि यह एक त्रुटि देता है, तो आपने शायद फोरट्रान कंपाइलर स्थापित नहीं किया है, उदाहरण के लिए अभी तक gfortran।

फोरट्रान हैलो वर्ल्ड कंपाइल रन
फोरट्रान हैलो वर्ल्ड कंपाइल रन

चरण 3. अपना प्रोग्राम चलाएँ।

कंपाइलर ने a.out नाम की एक फाइल तैयार की है।./a.out लिखकर इस फाइल को रन करें।

चरण 4. समझें कि आपने अभी क्या लिखा है।

  • प्रोग्राम हेलोवर्ल्ड

    कार्यक्रम "हैलोवर्ल्ड" की शुरुआत को इंगित करता है। इसी तरह,

    अंत कार्यक्रम हैलोवर्ल्ड

  • उसके अंत को इंगित करता है।
  • डिफ़ॉल्ट रूप से, यदि आप एक चर प्रकार की घोषणा नहीं करते हैं, तो फोरट्रान एक चर को एक ऐसे नाम के साथ मानता है जो i से n तक के अक्षर से पूर्णांक के रूप में शुरू होता है, और अन्य सभी एक वास्तविक संख्या के रूप में। इसका उपयोग करने की अनुशंसा की जाती है

    निहित कोई नहीं

  • अगर आपको उस व्यवहार की आवश्यकता नहीं है।
  • चरित्र*13 hello_string

  • वर्णों की एक सरणी घोषित करता है जिसे hello_string कहा जाता है।
  • hello_string = "नमस्ते, दुनिया!"

  • मान प्रदान करता है "नमस्ते, दुनिया!" घोषित सरणी के लिए। सी जैसी अन्य भाषाओं के विपरीत, यह उसी पंक्ति पर नहीं किया जा सकता है जैसे कि सरणी घोषित करना।
  • लिखें (*, *) hello_string

  • hello_string के मान को मानक आउटपुट पर प्रिंट करता है। पहले * का अर्थ कुछ फ़ाइल के विपरीत मानक आउटपुट को लिखना है। दूसरा * का अर्थ है किसी विशेष स्वरूपण का उपयोग न करना।
फोरट्रान टिप्पणियाँ
फोरट्रान टिप्पणियाँ

चरण 5. एक टिप्पणी जोड़ें।

इस तरह के एक सरल कार्यक्रम में यह आवश्यक नहीं है, लेकिन जब आप कुछ अधिक जटिल लिखते हैं तो यह उपयोगी होगा, इसलिए आपको पता होना चाहिए कि उन्हें कैसे जोड़ना है। टिप्पणी जोड़ने के दो तरीके हैं।

  • एक ऐसी टिप्पणी जोड़ने के लिए जिसमें एक पूरी लाइन अपने आप में हो, एक सी को सीधे एक नई लाइन में लिखें, बिना 6 रिक्त स्थान के। इसके बाद अपना कमेंट लिखें। बेहतर पठनीयता के लिए आपको c और अपनी टिप्पणी के बीच एक जगह छोड़नी चाहिए, लेकिन इसकी आवश्यकता नहीं है। ध्यान दें कि आपको एक का उपयोग करना होगा! फोरट्रान 95 और नए में एसी के बजाय।
  • कोड के समान ही एक टिप्पणी जोड़ने के लिए, एक जोड़ें! जहां आप चाहते हैं कि आपकी टिप्पणी शुरू हो। फिर, एक स्थान की आवश्यकता नहीं है, लेकिन पठनीयता में सुधार करता है।

भाग 2 का 4: इनपुट और यदि-निर्माण का उपयोग करना

फोरट्रान डेटा प्रकार
फोरट्रान डेटा प्रकार

चरण 1. विभिन्न डेटा प्रकारों को समझें।

  • INTEGER का उपयोग पूर्ण संख्याओं के लिए किया जाता है, जैसे 1, 3, या -3।
  • REAL में ऐसी संख्या भी हो सकती है जो पूर्ण न हो, जैसे 2.5.
  • COMPLEX का उपयोग जटिल संख्याओं को संग्रहीत करने के लिए किया जाता है। पहला अंक वास्तविक और दूसरा काल्पनिक भाग है।
  • वर्ण या विराम चिह्न जैसे वर्णों के लिए CHARACTER का उपयोग किया जाता है।
  • तार्किक या तो सत्य हो सकता है। या.false.. यह अन्य प्रोग्रामिंग भाषाओं में बूलियन प्रकार की तरह है।

चरण 2. उपयोगकर्ता का इनपुट प्राप्त करें।

"हैलो वर्ल्ड" प्रोग्राम में जो आपने पहले लिखा था, उपयोगकर्ता इनपुट प्राप्त करना बेकार होगा। तो एक नई फाइल खोलें और इसे compnum.f नाम दें। जब आप इसे पूरा कर लेंगे, तो यह उपयोगकर्ता को बताएगा कि उनके द्वारा दर्ज की गई संख्या धनात्मक है, ऋणात्मक है या शून्य के बराबर है।

  • लाइन्स प्रोग्राम कंपोनम और एंड प्रोग्राम कॉम्पनम दर्ज करें।
  • फिर, REAL प्रकार का वेरिएबल घोषित करें। सुनिश्चित करें कि आपकी घोषणा कार्यक्रम की शुरुआत और अंत के बीच है।
  • उपयोगकर्ता को समझाएं कि उन्हें क्या करना है। राइट फंक्शन के साथ कुछ टेक्स्ट लिखें।
  • उपयोगकर्ता के इनपुट को वेरिएबल में पढ़ें जिसे आपने रीड फ़ंक्शन के साथ घोषित किया था।

प्रोग्राम कॉम्पनम रियल आर राइट (*, *) "एक वास्तविक संख्या दर्ज करें:" पढ़ें (*, *) आर एंड प्रोग्राम

फोरट्रान अगर निर्माण
फोरट्रान अगर निर्माण

चरण 3. उपयोगकर्ता के इनपुट को if-construction के साथ संसाधित करें।

के बीच रखो

पढ़ें (*, *) आर

और यह

अंत कार्यक्रम

  • तुलना.gt से की जाती है। (से अधिक),.lt. (से कम) और.eq। (बराबर) फोरट्रान में।
  • फोरट्रान समर्थन करता है अगर, और अगर, और अन्य
  • एक फोरट्रान अगर-निर्माण हमेशा अंत के साथ समाप्त होता है।

अगर (r.gt. 0) तो लिखिए (*, *) "वह संख्या धनात्मक है।" अन्यथा यदि (r.lt. 0) तो (*, *) लिखें "वह संख्या ऋणात्मक है।" अन्य लिखें (*, *) "वह संख्या 0 है।" अगर अंत

टिप: आपको अधिक रिक्त स्थान वाले if-constructions के अंदर कोड इंडेंट करने की आवश्यकता नहीं है, लेकिन यह पठनीयता में सुधार करता है।

फोरट्रान नंबर चेक प्रोग्राम test
फोरट्रान नंबर चेक प्रोग्राम test

चरण 4. अपना प्रोग्राम संकलित करें और चलाएं।

इसका परीक्षण करने के लिए कुछ नंबर इनपुट करें। यदि आप एक पत्र दर्ज करते हैं, तो यह एक त्रुटि उत्पन्न करेगा, लेकिन यह ठीक है क्योंकि प्रोग्राम यह जांच नहीं करता है कि इनपुट एक अक्षर, संख्या या कुछ और है या नहीं।

भाग ३ का ४: लूप्स और एरेज़ का उपयोग करना

चरण 1. एक नई फ़ाइल खोलें।

चूंकि यह अवधारणा अलग है, इसलिए आपको फिर से एक नया कार्यक्रम लिखना होगा। फ़ाइल को नाम दें addmany.f. संबंधित प्रोग्राम डालें और प्रोग्राम स्टेटमेंट समाप्त करें, साथ ही एक निहित कोई नहीं। जब आप काम पूरा कर लेंगे, तो यह प्रोग्राम 10 नंबर पढ़ेगा और उनका योग प्रिंट करेगा।

चरण २। लंबाई १० की एक सरणी घोषित करें।

यह वह जगह है जहां आप नंबर स्टोर करेंगे। चूंकि आप शायद वास्तविक संख्याओं का योग चाहते हैं, इसलिए आपको सरणी को वास्तविक घोषित करना चाहिए। आप इस तरह की एक सरणी घोषित करते हैं

वास्तविक संख्या (50)

(संख्याएं सरणी का नाम है, अभिव्यक्ति नहीं)।

चरण 3. कुछ चर घोषित करें।

numSum को एक वास्तविक संख्या के रूप में घोषित करें। आप इसे बाद में राशि को स्टोर करने के लिए उपयोग करेंगे, लेकिन चूंकि योग पहले से ही फोरट्रान अभिव्यक्ति द्वारा लिया गया है, इसलिए आपको numSum जैसे नाम का उपयोग करना होगा। इसे 0 पर सेट करें। i को एक पूर्णांक के रूप में घोषित करें और इसे अभी तक कोई मान निर्दिष्ट न करें। यह डू-लूप में किया जाएगा।

चरण 4. एक डू-लूप बनाएं।

अन्य प्रोग्रामिंग भाषाओं में इसके समकक्ष फॉर-लूप होगा।

  • एक डू-लूप हमेशा डू से शुरू होता है।
  • डू के समान लाइन पर, एक स्पेस द्वारा इससे अलग किया गया, वह लेबल है जिस पर प्रोग्राम समाप्त होने पर जाएगा। अभी के लिए, केवल 1 लिखें, आप बाद में लेबल सेट कर देंगे।
  • उसके बाद, फिर से केवल एक स्थान से अलग करें, टाइप करें

    मैं = 1, 10

    . यह वेरिएबल i बना देगा, जिसे आपने लूप से पहले घोषित किया था, 1 के चरणों में 1 से 10 तक जाएं। इस अभिव्यक्ति में चरणों का उल्लेख नहीं किया गया है, इसलिए फोरट्रान 1 के डिफ़ॉल्ट मान का उपयोग करता है। आप भी लिख सकते थे

    मैं = 1, 10, 1

  • लूप के अंदर कुछ कोड डालें (बेहतर पठनीयता के लिए रिक्त स्थान के साथ इंडेंट)। इस कार्यक्रम के लिए, आपको सरणी संख्याओं के i-वें तत्व के साथ चर numSum को बढ़ाना चाहिए। यह अभिव्यक्ति के साथ किया जाता है

    numSum = numSum + संख्या (i)

  • लूप को जारी रखें स्टेटमेंट के साथ समाप्त करें जिसमें एक लेबल है। केवल 4 रिक्त स्थान टाइप करें। उसके बाद, 1 टाइप करें। यही वह लेबल है जिसे आपने डू-लूप को समाप्त होने के बाद जाने के लिए कहा था। फिर, एक स्पेस टाइप करें और जारी रखें। जारी रखें अभिव्यक्ति कुछ नहीं करती है, लेकिन यह एक लेबल लगाने के लिए एक अच्छी जगह देती है, साथ ही यह दिखाती है कि डू-लूप समाप्त हो गया है।

आपका डू लूप अब इस तरह दिखना चाहिए:

1 i = 1, 10 numSum = numSum + संख्याएं (i) 1 जारी रखें

टिप: फोरट्रान 95 और नए में, आपको लेबल का उपयोग करने की आवश्यकता नहीं है। बस एक को डू स्टेटमेंट में न डालें और "जारी रखें" के बजाय "एंड डू" के साथ लूप को समाप्त करें।

फोरट्रान डू लूप कोड
फोरट्रान डू लूप कोड

चरण 5. प्रिंट numSum।

इसके अलावा, कुछ संदर्भ देना समझ में आता है, उदाहरण के लिए "आपकी संख्याओं का योग है:"। दोनों के लिए लिखें फ़ंक्शन का उपयोग करें। आपका पूरा कोड अब इस तरह दिखना चाहिए:

प्रोग्राम ऐडमैनी इंपैक्ट नो रियल नंबर्स(१०) रियल नंबरसम इंटीजर i numSum = ० लिखें (*, *) 1 लिखना जारी रखें (*, *) "उनका योग है:" लिखें (*, *) numSum end program addmany

फोरट्रान नंबर कोड जोड़ें test
फोरट्रान नंबर कोड जोड़ें test

चरण 6. अपना कोड संकलित करें और चलाएं।

इसका परीक्षण करना न भूलें। आप प्रत्येक नंबर दर्ज करने के बाद या तो ↵ Enter दबा सकते हैं या एक ही पंक्ति में कई नंबर दर्ज कर सकते हैं और उन्हें एक स्थान से अलग कर सकते हैं।

भाग 4 का 4: उन्नत अवधारणाओं को समझना

फोरट्रान चरण 13. में कार्यक्रम
फोरट्रान चरण 13. में कार्यक्रम

चरण 1. इस बात का अच्छा विचार रखें कि आपका कार्यक्रम क्या करेगा।

इस बारे में सोचें कि इनपुट के रूप में किस प्रकार के डेटा की आवश्यकता है, आउटपुट की संरचना कैसे करें, और कुछ मध्यवर्ती आउटपुट शामिल करें ताकि आप अपनी गणना की प्रगति की निगरानी कर सकें। यह बहुत उपयोगी होगा यदि आप जानते हैं कि आपकी गणना लंबे समय तक चलेगी या इसमें कई जटिल चरण शामिल होंगे।

फोरट्रान संदर्भ वेबसाइट Screenshot
फोरट्रान संदर्भ वेबसाइट Screenshot

चरण 2. एक अच्छा फोरट्रान संदर्भ खोजें।

फोरट्रान में इस आलेख में बताए गए कार्यों की तुलना में कई और कार्य हैं, और वे उस कार्यक्रम के लिए उपयोगी हो सकते हैं जिसे आप लिखना चाहते हैं। एक संदर्भ प्रोग्रामिंग भाषा के सभी कार्यों को सूचीबद्ध करता है। यह फोरट्रान 77 के लिए एक है और यह फोरट्रान 90/95 के लिए एक है।

फोरट्रान सबरूटीन्स example
फोरट्रान सबरूटीन्स example

चरण 3. सबरूटीन्स और कार्यों के बारे में जानें।

फोरट्रान प्रारूप स्ट्रिंग example
फोरट्रान प्रारूप स्ट्रिंग example

चरण ४. फाइलों से/को पढ़ना और लिखना सीखें।

अपने इनपुट/आउटपुट को प्रारूपित करना भी सीखें।

आधुनिक फोरट्रान उदाहरण
आधुनिक फोरट्रान उदाहरण

चरण 5. फोरट्रान 90/95 और नए की नई विशेषताओं के बारे में जानें।

इस चरण को छोड़ दें यदि आप जानते हैं कि आप केवल Fortran 77 कोड लिखेंगे/रखेंगे।

याद रखें कि फोरट्रान 90 ने "फ्री फॉर्म" स्रोत कोड पेश किया, जिससे कोड को बिना रिक्त स्थान और 72 वर्ण सीमा के बिना लिखा जा सके।

फोरट्रान बुक ऑनलाइन Screenshot
फोरट्रान बुक ऑनलाइन Screenshot

चरण 6. वैज्ञानिक प्रोग्रामिंग पर कुछ किताबें पढ़ें या देखें।

उदाहरण के लिए, पुस्तक "न्यूमेरिकल रेसिपी इन फोरट्रान" वैज्ञानिक प्रोग्रामिंग एल्गोरिदम पर एक अच्छा पाठ है और कोड को एक साथ कैसे रखा जाए, इसका एक अच्छा परिचय है। हाल के संस्करणों में मिश्रित भाषा के वातावरण और समानांतर प्रोग्रामिंग में प्रोग्राम कैसे करें, इस पर अध्याय शामिल हैं। एक अन्य उदाहरण अर्जेन मार्कस द्वारा लिखित "मॉडर्न फोरट्रान इन प्रैक्टिस" है। पुस्तक नवीनतम फोरट्रान मानकों के अनुसार इक्कीसवीं सदी की शैली में फोरट्रान कार्यक्रमों को लिखने के तरीके के बारे में एक अंतर्दृष्टि प्रदान करती है।

कई फाइलों में फोरट्रान संकलन कार्यक्रम।
कई फाइलों में फोरट्रान संकलन कार्यक्रम।

चरण 7. एकाधिक फ़ाइलों में फैले प्रोग्राम को संकलित करना सीखें।

आइए मान लें कि आपका फोरट्रान प्रोग्राम main.f और morestuff.f फाइलों में फैला हुआ है, और आप परिणामी बाइनरी को ऑलस्टफ नाम देना चाहते हैं। फिर आपको कमांड लाइन में निम्नलिखित कमांड लिखनी होगी:

f77 -c morestuff.f f77 -c main.f f77 -c morestuff.f f77 -o allstuff main.o morestuff.f

फिर./allstuff लिखकर फाइल को रन करें।

टिप: यह फोरट्रान के नए संस्करणों के साथ उसी तरह काम करता है। बस.f को सही एक्सटेंशन से बदलें और f77 को सही कंपाइलर संस्करण से बदलें।

चरण 8. आपके कंपाइलर द्वारा प्रदान किए जाने वाले अनुकूलन का उपयोग करें।

अधिकांश कंपाइलरों में ऑप्टिमाइज़ेशन एल्गोरिदम शामिल होते हैं जो आपके कोड की दक्षता में सुधार करते हैं। संकलन करते समय इन्हें आम तौर पर -O, -O2, या -O3 ध्वज शामिल करके चालू किया जाता है (फिर से फोरट्रान के आपके संस्करण के आधार पर)।

  • आम तौर पर, निम्नतम स्तर -O या -O2 स्तर सबसे अच्छा होता है। ध्यान रखें कि अधिक आक्रामक अनुकूलन विकल्प का उपयोग करने से जटिल कोड में त्रुटियां हो सकती हैं और चीजें धीमी भी हो सकती हैं! अपने कोड का परीक्षण करें।

    टिप्स

    • छोटे कार्यक्रमों से शुरुआत करें। जब आप अपना खुद का कोड बना रहे हों, तो समस्या के सबसे आवश्यक हिस्से की पहचान करने का प्रयास करें - क्या यह डेटा इनपुट या फ़ंक्शन की कॉलिंग है, लूप की संरचना (ये कुछ बहुत ही प्राथमिक उदाहरण हैं) और वहीं से शुरू करें। फिर उस पर छोटे वेतन वृद्धि में निर्माण करें।
    • फोरट्रान केस-संवेदी नहीं है। उदाहरण के लिए, आप एक वैरिएबल "असली संख्या" घोषित कर सकते हैं और इसे एक मान निर्दिष्ट करने के लिए अगली पंक्ति में "num = 1" लिख सकते हैं। लेकिन यह एक खराब स्टाइल है, इसलिए इससे बचें। इससे भी महत्वपूर्ण बात यह है कि फोरट्रान कार्यों और बयानों के मामले की भी परवाह नहीं करता है। अपरकेस में फंक्शन और स्टेटमेंट और लोअरकेस में वेरिएबल लिखना काफी आम है।
    • EMACS नोटपैड के बजाय उपयोग करने के लिए एक अच्छा मुफ्त टेक्स्ट एडिटर है।
    • आपको पहली बार में ऑनलाइन IDE (एकीकृत विकास परिवेश) का उपयोग करना आसान लग सकता है। एक अच्छा विकल्प कोडिंग ग्राउंड है। आपको वहां फोरट्रान-95 सहित कई प्रोग्रामिंग भाषाएं मिलेंगी। एक अन्य विकल्प आइडिया है।

सिफारिश की: