फ़्लोचार्टिंग एक एल्गोरिथम का चित्रमय प्रतिनिधित्व ( Graphical Reorientation ) है। यह प्रोग्रामिंग में बुनियादी संचालन का उपयोग करता है। सुचना और किये जाने वाले कार्य के प्रवाह को दिखाने के लिए सभी चिन्ह या प्रतिक एक दूसरे से जुड़े होते हैं। हम आगे क भाग में एक कलन विधि ( एल्गोरिथ्म ) को प्रदर्शित करने के लिए इन चिन्हों का उपयोग करेंगे।
प्रोग्रामिंग भाषा में एल्गोरिदम को व्यक्त करने के कई तरीके हैं। जब एक कलन विधि ( एल्गोरिथ्म ) किसी प्रोग्रामिंग भाषा में लिखी लिखी जाती हैं, तो यह एक प्रोग्राम बन जाता है। इस प्रकार, कोई भी प्रोग्राम एक एल्गोरिथम है, हालांकि रिवर्स सत्य नहीं है। प्रोग्राम्स के रूप में प्रतिनिधित्व के अलावा, एल्गोरिथ्म को अक्सर फ़्लोचार्ट के रूप में व्यक्त किया जाता है जिसकी चर्चा नीचे की गई है -
दूसरे शब्दों में, हम कह सकते हैं कि एक फ़्लोचार्ट एक एल्गोरिथ्म का एक सचित्र प्रतिनिधित्व ( Pictorial Representation ) है जो विभिन्न प्रकार के निर्देशों को दर्शाने के लिए विभिन्न आकृतियों के बक्से का उपयोग करता है। वास्तविक निर्देश स्पष्ट और संक्षिप्त बयानों ( Concise Statements ) का उपयोग करके इन बॉक्स में लिखे गए हैं। ये बॉक्स संचालन के प्रवाह को इंगित करने के लिए तीर के निशान वाली ठोस रेखाओं से जुड़े होते हैं, यानी सटीक क्रम जिसमें निर्देशों को निष्पादित किया जाना है।
आम तौर पर, एक एल्गोरिथ्म को पहले फ़्लोचार्ट के रूप में दर्शाया जाता है और फिर फ़्लोचार्ट को कंप्यूटर प्रोग्राम तैयार करने के लिए कुछ प्रोग्रामिंग भाषा में व्यक्त किया जाता है। प्रोग्राम राइटिंग में इस दो दृष्टिकोण ( Two Approach ) का मुख्य लाभ यह है कि फ़्लोचार्ट बनाते समय प्रोग्रामिंग भाषा के तत्वों के विवरण से संबंधित नहीं है ... इसलिए, वह पूरी तरह से प्रक्रिया के तर्क ( Logic ) पर ध्यान केंद्रित कर सकता है।
इसके अलावा, चूंकि एक फ़्लोचार्ट सचित्र रूप ( Pictorial Form ) में संचालन के प्रवाह को दिखाता है, प्रक्रिया के तर्क में किसी भी त्रुटि को प्रोग्राम के मामले की तुलना में अधिक आसानी से पता लगाया जा सकता है। एक बार फ़्लोचार्ट तैयार हो जाने के बाद, प्रोग्रामर तर्क के बारे में भूल सकता है और प्रोग्रामिंग भाषा के कथनों के संदर्भ में फ़्लोचार्ट के प्रत्येक बॉक्स में संचालन को कोड करने पर ही ध्यान केंद्रित कर सकता है। यह सामान्य रूप से, एक त्रुटि मुक्त कार्यक्रम ( Error-Free Program ) सुनिश्चित करेगा।
इसलिए, एक फ़्लोचार्ट कंप्यूटर प्रोग्राम में शामिल किए जाने वाले तर्क की एक तस्वीर ( A Picture Of The Logic ) है। यह एक कंप्यूटर द्वारा किसी समस्या को हल करने के लिए आवश्यक चरणों के अनुक्रम को व्यवस्थित करने के तरीके पर एक दृश्य, द्वि-आयामी प्रारूप ( Two-Dimensional Format ) में प्रोग्रामर की सहायता करने का एक तरीका है। यह मूल रूप से प्रोग्राम के लिखे जाने पर पालन की जाने वाली योजना है। यह एक प्रोग्रामर के लिए एक मानचित्र ( Map ) की तरह काम करता है और उसे मार्गदर्शन करता है कि कंप्यूटर प्रोग्राम लिखते समय शुरुआती बिंदु से अंतिम बिंदु तक कैसे जाना है।
इस लेख में, हम समझेंगे कि विभिन्न उदाहरणों की सहायता से सी प्रोग्रामिंग भाषा में फ्लो चार्ट कैसे बनाया जाता है।
What Do You Mean By Flowchart? ( फ्लोचार्ट से आप क्या समझते हैं ?)
फ़्लोचार्ट एक एल्गोरिथ्म और प्रक्रियात्मक डिज़ाइन ( Procedural Design ) वर्कफ़्लो का सबसे व्यापक रूप से उपयोग किया जाने वाला चित्रमय प्रतिनिधित्व ( Graphical Representation ) है। यह एक कार्यक्रम में पालन किए जाने वाले संचालन और निर्णयों को दिखाने के लिए विभिन्न प्रतीकों का उपयोग करता है। यह अनुक्रमिक क्रम ( Sequential Order ) में बहती है।
Types Of Flowchart ( फ़्लोचार्ट के प्रकार )
विभिन्न प्रकार के फ़्लोचार्ट नीचे दिए गए हैं।
Horizontal Flowchart ( क्षैतिज फ़्लोचार्ट )
Panoramic Flowchart ( पैनोरमिक फ़्लोचार्ट )
Vertical Flowchart ( लंबवत फ़्लोचार्ट )
Architectural Flowchart ( वास्तुकला फ़्लोचार्ट )
Rules Or Guidelines Of Flowchart ( फ़्लोचार्ट के नियम या दिशानिर्देश )
फ़्लोचार्ट बनाने के लिए विभिन्न नियम या दिशानिर्देश नीचे दिए गए हैं;
केवल पारंपरिक फ़्लोचार्ट ( Conventional Flowchart ) प्रतीकों का उपयोग किया जाना चाहिए।
फ़्लोचार्ट में नामों और चरों ( Variables ) का उचित उपयोग।
यदि फ़्लोचार्ट बड़ा और जटिल हो जाता है, तो कनेक्टर प्रतीकों ( Connector Symbols ) का उपयोग करें।
फ़्लोचार्ट में स्टार्ट और स्टॉप पॉइंट होने चाहिए।
List Of Flowchart Symbols ( फ़्लोचार्ट प्रतीकों की सूची )
फ़्लोचार्ट प्रतीकों की सूची इस प्रकार है;
Terminals ( टर्मिनल्स प्रतीक )
Input/Output ( इनपुट/आउटपुट प्रतीक या अंतर्वेशन/परिणाम प्रतीक )
Decision ( निर्णय प्रतीक )
Flowlines ( फ्लो लाइन्स प्रतीक या प्रवाह रेखाएं प्रतीक )
Processing ( प्रसंस्करण प्रतीक )
Connector ( योजक प्रतीक )
Comment Annotation ( कमेंट अननोटेशन प्रतीक )
Documents ( दस्तावेज प्रतीक )
Pre-Defined Process ( पूर्वनिर्धारित प्रक्रिया प्रतीक या पूर्व परिभाषित कार्य प्रतीक )
Hexagon Symbol ( षट्भुज प्रतीक )
On-Page Reference Symbol ( ऑन-पेज संदर्भ प्रतीक )
Off-Page Reference Symbol ( ऑफ-पेज संदर्भ प्रतीक )
Delay or Bottleneck Symbol ( देरी या अड़चन प्रतीक )
Internal Storage Symbol ( आंतरिक भंडारण प्रतीक )
विभिन्न फ़्लोचार्ट प्रतीकों के अलग-अलग पारंपरिक अर्थ होते हैं। फ़्लोचार्ट डिज़ाइन में उपयोग किए जाने वाले विभिन्न प्रतीक नीचे विस्तारित रूप से समझाया हैं।
01. Terminals Symbol ( टर्मिनल्स प्रतीक )
यह अंडाकार आकार ( Oval Shaped ) का प्रतीक प्रोग्राम लॉजिक फ्लो में टर्मिनेशन पॉइंट, शुरुआत ( START ), एंडिंग ( STOP ) और पॉज़ ( HALT ) को इंगित करने के लिए उपयोग किया जाता है। यह फ्लो चार्ट में उपयोग किया जाने वाला पहला और अंतिम प्रतीक है।
02. Input/Output Symbol ( इनपुट/आउटपुट या अंतर्वेशन/परिणाम प्रतीक )
इस समांतर चतुर्भुज ( Parallelogram ) प्रतीक का उपयोग प्रोग्राम के किसी भी उपकरण में 1 से डेटा या सूचना के इनपुट/आउटपुट के लिए किया जाता है। यह पढ़ने और लिखने के संचालन को इंगित करता है।
03. Decision Symbol ( निर्णय प्रतीक )
इस हीरे ( डायमंड ) के प्रतीक का उपयोग निर्णय ( प्रश्न ) को इंगित करने के लिए किया जाता है और फलस्वरूप एक प्रश्न के अनुरोध के आधार पर पथों की शाखा बिंदुओं ( Branch Points ) का अनुसरण किया जाता है या आधारित होते हैं।
04. Flowline Symbols ( फ्लो लाइन्स या प्रवाह रेखाएं प्रतीक )
एरोहेड्स ( Arrowheads ) के साथ फ्लोलाइन का उपयोग ऑपरेशन के प्रवाह को इंगित करने के लिए किया जाता है, अर्थात सटीक क्रम जिसमें निर्देशों को निष्पादित किया जाना है। फ़्लोचार्ट का सामान्य प्रवाह ऊपर से नीचे और बाएँ से दाएँ होता है।
05. Processing Symbol ( प्रसंस्करण प्रतीक )
एक फ़्लोचार्ट में एक प्रोसेसिंग प्रतीक का उपयोग अंकगणितीय गणनाओं और आंकड़ों या डेटा के मूवमेंट ( गति ) निर्देशों का प्रतिनिधित्व करने के लिए किया जाता है। डेटा को मुख्य मेमोरी के एक स्थान से दूसरे स्थान पर ले जाने की तार्किक प्रक्रिया ( Logical Process ) को भी इस प्रतीक द्वारा दर्शाया जाता है।
06. Connector Symbol ( योजक प्रतीक )
फ़्लोचार्ट के विभिन्न भागों ( Portions ) को जोड़ने के लिए एक कनेक्टर या योजक प्रतीक का उपयोग किया जाता है। यह आमतौर पर तब उपयोग किया जाता है जब फ़्लोचार्ट को विभिन्न पृष्ठों के बीच विभाजित किया जाता है।
एक संख्या या अंग्रेजी भाषा का कोई अक्षर एक वृत्त ( गोले ) के अंदर लिखा जाता हैं। एक दूसरा वृत्त ( गोला ), जिसमे वही संख्या या अक्षर लिखा हों। दोनों एक ही स्थान ( बिंदु ) को प्रदर्शित करते हैं या एक साथ जोड़े दिया जाता हैं।
07. Comment Annotation Symbol ( कमेंट अननोटेशन प्रतीक )
फ़्लोचार्ट के किसी बिंदु को वर्गीकृत करने के लिए प्रक्रिया ( Procedure ) की सामग्री पर टिप्पणियों/रिमार्क को इंगित करने के लिए इस प्रतीक का उपयोग किया जाता है।
08. Documents Symbol ( दस्तावेज प्रतीक )
इसका उपयोग केवल इनपुट आंकड़ों या डेटा को दिखाने के लिए किया जाता है जो कागज ( पेपर ) पर प्राप्त होता है या किसी प्रक्रिया के परिणामस्वरूप उत्पन्न कोई रिपोर्ट के रूप में प्राप्त होते हैं।
09. Pre-Defined Process Symbol ( पूर्वनिर्धारित प्रक्रिया प्रतीक या पूर्व परिभाषित कार्य प्रतीक )
इसका उपयोग यह दिखाने के लिए किया जाता है कि एक प्रक्रिया ( Procedure ) पहले से ही किसी अन्य फ़्लोचार्ट द्वारा परिभाषित ( Define ) की गई है। ऐसे प्रतीक के अंदर उपयुक्त फ़्लोचार्ट का संदर्भ लिखा जाता है। यह वास्तव में कई प्रसंस्करण चरणों को इंगित करता है, जिनका विवरण इस बिंदु पर आवश्यक नहीं है।
10. Hexagon Symbol ( षट्भुज प्रतीक )
इसका उपयोग लूप सेटिंग स्टेटमेंट वाले प्रिपरेशन बॉक्स को बनाने के लिए किया जाता है। नीचे दिए गए चिन्ह का प्रयोग षट्भुज चिन्ह ( प्रतीक ) को निरूपित करने के लिए किया जाता है।
11. On-Page Reference Symbol ( ऑन-पेज संदर्भ प्रतीक )
इस प्रतीक में एक अक्षर होता है जो इंगित करता है कि प्रवाह उसी पृष्ठ पर कहीं और समान अक्षरों वाले मेल खाने ( Matching ) वाले प्रतीक पर जारी है। नीचे दिए गए प्रतीक का उपयोग ऑन-पेज संदर्भ प्रतीक का प्रतिनिधित्व करने के लिए किया जाता है।
📝Note:- इन्हें On-Page Connector भी कहा जाता है।
12. Off-Page Reference Symbol ( ऑफ-पेज संदर्भ प्रतीक )
इस प्रतीक में एक अक्षर होता है जो दर्शाता है कि प्रवाह एक अलग पृष्ठ पर कहीं और एक ही अक्षर वाले मेल खाने ( Matching ) वाले प्रतीक पर जारी है। नीचे दिए गए प्रतीक का उपयोग ऑफ-पेज संदर्भ प्रतीक का प्रतिनिधित्व करने के लिए किया जाता है।
📝Note:- इन्हें Off-Page Connector भी कहा जाता है।
13. Delay or Bottleneck Symbol ( देरी या अड़चन प्रतीक )
फ्लोचार्ट में देरी ( Delay ) की पहचान के लिए इस प्रतीक का उपयोग किया जाता है। देरी ( Delay ) के लिए इस्तेमाल किया जाने वाला वैकल्पिक नाम अड़चन ( Bottleneck ) है। नीचे दिए गए प्रतीक का उपयोग देरी या अड़चन ( Delay Or Bottleneck ) के प्रतीक का प्रतिनिधित्व करने के लिए किया जाता है।
14. Internal Storage Symbol ( आंतरिक भंडारण प्रतीक )
ऊपर दिखाए गए प्रतीक का प्रयोग आंतरिक भंडारण प्रतीक का प्रतिनिधित्व करने के लिए किया जाता है।
Comments