/ / प्रोग्रामिंग। बुनियादी एल्गोरिदम का निर्माण

प्रोग्रामिंग। बुनियादी एल्गोरिदम का निर्माण

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

एल्गोरिथ्म

शब्द "एल्गोरिथ्म" लैटिन अल्गोरिटिमी से आता है। इसका क्या मतलब है? प्रामाणिक शब्द एक गणितज्ञ के नाम से आता है, जिसकी गतिविधि 9 वीं शताब्दी में गिर गई थी। अल-ख्वारिज़मी ग्रंथ के लिए धन्यवाद, मानव जाति एक सामान्य अवधारणा के साथ, सामान्य प्रकार के एल्गोरिथम निर्माण से परिचित होने में सक्षम थी।

इससे पहले, शब्द लिखने का तरीका अपनाया गया था - "एल्गोरिथ्म"। अब इसका उपयोग केवल कुछ मामलों में किया जाता है।

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

एल्गोरिदम के प्रकार

मुख्य एल्गोरिथम निर्माण को कई प्रकारों में विभाजित किया गया है, जिसकी चर्चा इस उपधारा में की जाएगी। वे क्या हैं?

  1. सूचना के। इस तरह के एल्गोरिदम बड़ी मात्रा में डेटा के साथ काम करते हैं, लेकिन उनके प्रसंस्करण की मात्रा लंबाई में छोटी और सीधी होती है।
  2. प्रबंधकों। ऐसे एल्गोरिदम का काम उन सूचनाओं से जुड़ा होता है जो किसी विशेष स्रोत से प्रदान की जाती हैं। इसे प्राप्त करने के बाद, उपकरणों के संचालन को सुनिश्चित करने के लिए विशेष सिग्नल भेजे जाते हैं।
  3. कम्प्यूटिंग। सूचना एल्गोरिदम के विपरीत, वर्णित लोग कम मात्रा में डेटा के साथ काम करते हैं, लेकिन काम की एक बड़ी प्रक्रिया का उत्पादन करते हैं।

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

एल्गोरिथम गुण

सभी बुनियादी एल्गोरिथम निर्माण में ऐसी क्रियाएं होनी चाहिए जो उन्हें "मानती हैं"। आइए इस मुद्दे पर अधिक विस्तार से विचार करें।

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

सबसे सटीक काम के लिए बुनियादी एल्गोरिथम निर्माण में क्या गुण होना चाहिए?

  1. समझदारी।प्रत्येक कमांड निष्पादन योग्य ऑब्जेक्ट के लिए जितना संभव हो उतना स्पष्ट होना चाहिए। ऐसा लगता है कि कुछ भी आसान नहीं है, उदाहरण के लिए, केंद्र में एक बिंदु खींचना, नहीं, लेकिन जब तक एक कमांड नहीं लिखा जाता है जो आपको कार्रवाई करने की अनुमति देगा, ऐसा करना संभव नहीं होगा।
  2. प्रभावशीलता।इस संपत्ति का क्या मतलब है? परिणाम की अनिवार्य रसीद। एल्गोरिथ्म कुछ जवाब नहीं दे सकता है। त्रुटि के कारण, आपको वह परिणाम नहीं मिल सकता है जो आप चाहते थे, लेकिन यह अभी भी होगा। इसके अलावा, एक निश्चित संख्या में चरणों के बाद उत्तर प्राप्त किया जाना चाहिए।
  3. जन चरित्र। कोई भी एल्गोरिथ्म समस्याओं के कुछ वर्ग के लिए लागू होना चाहिए। प्रारंभिक डेटा में वे एक दूसरे से भिन्न हो सकते हैं।
  4. निश्चितता।प्रत्येक क्रिया का केवल एक अर्थ होना चाहिए और व्युत्पन्न डिक्रिप्शन के लिए अनुमति नहीं देना चाहिए। आदर्श रूप से, कोई फर्क नहीं पड़ता कि कार्यक्रम कितने समय तक चलता है, परिणाम हमेशा एक ही होना चाहिए।
  5. विरक्ति। एल्गोरिदम - चरणों का अनुक्रमिक निष्पादन। प्रत्येक चरण एक कमांड है, आप नए लोगों को छोड़ या जोड़ नहीं सकते।
  6. शुद्धता।किसी भी तरह की समस्या के लिए लागू कोई भी एल्गोरिथम सभी के लिए सही होना चाहिए। प्रोग्रामिंग में, समस्याएं अक्सर लिखित कदमों में नहीं होती हैं, जो अक्सर अधिक समय नहीं लेती हैं, लेकिन विभिन्न प्रकार के प्रश्नों के लिए उन्हें निष्पादित करने में। इसलिए, एल्गोरिथ्म को डीबग करने के लिए एक महत्वपूर्ण कदम होगा। बुनियादी एल्गोरिथम निर्माण भी इसमें मदद कर सकते हैं, जिसकी पुनरावृत्ति आपको बेहतर परिणाम प्राप्त करने की अनुमति देगा।

एल्गोरिदम का विवरण

यदि हम एल्गोरिदम लिखने के तरीकों के बारे में बात करते हैं, तो निम्नलिखित पर प्रकाश डाला जाना चाहिए:

  • मौखिक। दूसरे शब्दों में, एक भाषा में जो घटक के लिए खुद को व्यक्त करने के लिए सुविधाजनक है।
  • सारणीबद्ध। तार्किक रूप से, एल्गोरिथ्म को तालिकाओं में लिखा जाता है और, एक नियम के रूप में, एक सहायक तत्व के रूप में उपयोग किया जाता है।
  • फॉर्मूला-मौखिक। यह व्याख्या के एक मौखिक तरीके पर आधारित है, लेकिन इस तरह के कार्यों को गणितीय सूत्रों या प्रतीकों में भी लिखा जाता है।
  • ग्राफिक। ऐसा एल्गोरिथ्म एक विशेष ब्लॉक आरेख भाषा में लिखा गया है।

अंतिम बिंदु स्पष्ट किया जाना चाहिए।ब्लॉक डायग्राम क्या है? यह एक रैखिक या गैर-रेखीय एल्गोरिथ्म है, जिसके चरणों को विशेष ब्लॉकों का उपयोग करके लिखा जाता है। उनका अपना विन्यास, उद्देश्य और कार्य है। इस तरह के विवरण के मामले में, एल्गोरिथ्म ब्लॉक आरेखों में लिखा जाता है, जो लाइनों द्वारा परस्पर जुड़े होते हैं। उन्हें अतिरिक्त रूप से एक या किसी अन्य क्रिया (चरण) को रिकॉर्ड करना होगा।

बुनियादी एल्गोरिथम का निर्माण

एल्गोरिथम निर्माण

कुछ का तर्क है कि एल्गोरिदम में 3 नहीं हैप्रकार, और 4. बुनियादी एल्गोरिथम निर्माण: रैखिक, शाखा, चक्रीय। इस भ्रम का कारण क्या है यह स्पष्ट नहीं है। हालांकि, जटिल समस्याओं के सरल समाधान के लिए, कंप्यूटर इन तीनों के एल्गोरिदम का उपयोग करता है, बल्कि बड़े समूहों का। आइए उन पर विचार करें।

  1. रैखिक।इस तरह की कम्प्यूटेशनल प्रक्रिया को यह नाम इस तथ्य के कारण मिला है कि सभी क्रियाएं एक रैखिक अनुक्रम में की जाती हैं, प्रत्येक चरण में एक से अधिक बार प्रदर्शन नहीं किया जाता है। यदि हम कार्य की योजना पर विचार करते हैं, तो इसमें ब्लॉक को एक के नीचे एक रखा जाता है, निष्पादन की क्रम संख्या के आधार पर। रैखिक एल्गोरिदम इस तरह से काम करते हैं कि क्रियाओं की दिशा और अर्थ प्रारंभिक डेटा से नहीं बदलते हैं। समाधान की यह विधि योग या अंतर की गणना करने के लिए उपयुक्त है, एक आंकड़ा या इसकी परिधि का क्षेत्र, आदि। एल्गोरिदमिक निर्माण का मुख्य प्रकार यह है।
    एल्गोरिथ्म बुनियादी एल्गोरिथम निर्माण
  2. शाखा लगाना।यह कम्प्यूटेशनल प्रक्रिया एक तार्किक अभिव्यक्ति (इसके बाद एलपी) और एक शर्त ("झूठ" और "सच") की पसंद का पता लगाती है। प्रत्येक मामले में, केवल दो या अधिक आदेशों में से एक को लागू किया जाता है। कोई कार्य नहीं है और ऐसा नहीं हो सकता है जिसमें अन्य विकल्प भी किए जाएंगे। यदि एल्गोरिथ्म की दो शाखाएँ हैं, तो यह सरल है; यदि दो से अधिक हैं, तो यह जटिल है। इसके अलावा, बाद की प्रक्रिया को आसानी से पूर्व द्वारा दर्शाया जाता है। एल्गोरिथम निर्माण का मुख्य प्रकार पहला आइटम और दूसरा दोनों है। अगली प्रजाति भी इस सूची में शामिल है।
  3. चक्रीय। ऐसे एल्गोरिथ्म में, आवश्यक रूप से एक तत्व होगा जो कई बार दोहराया जाता है, जबकि विभिन्न प्रारंभिक डेटा का उपयोग करते हैं। दूसरे शब्दों में, इस प्रक्रिया को एक चक्र कहा जाता है।

यह ध्यान दिया जाना चाहिए कि सभी मुख्य एल्गोरिथम निर्माण (निम्नलिखित, ब्रांचिंग, लूप) एक-दूसरे के साथ जुड़े हुए हैं, हालांकि उन्हें अलग से इस्तेमाल किया जा सकता है।

चक्रों और उनके प्रकारों का निर्माण

चक्र बनाने के लिए क्या आवश्यक है?

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

लूप निर्धारक हो सकते हैं औरपुनरावृत्त पहला पुनरावृत्ति की ज्ञात संख्या के साथ क्रियाओं का दोहराव है। एक पुनरावृत्त लूप वह है जो एक अनिश्चित संख्या को दोहराता है जब तक कि कोई स्थिति सही या गलत नहीं हो जाती।

एल्गोरिदम निर्माण का मुख्य प्रकार है

मूल एल्गोरिथ्म

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

रैखिक एल्गोरिदम

जैसा कि ऊपर से स्पष्ट है, एल्गोरिदमरैखिक और गैर-रैखिक हैं। पहले विकल्प पर विचार करें। ऐसा क्यों कहा जाता है? सब कुछ बेहद सरल है। तथ्य यह है कि एल्गोरिथ्म में पुन: उत्पन्न होने वाले सभी कार्यों में एक स्पष्ट रूप से अनुक्रमिक निष्पादन होता है, सभी चरणों को एक के बाद एक सख्ती से किया जाता है। एक नियम के रूप में, ऐसे कार्य छोटे होते हैं और निम्न स्तर की जटिलता होती है।

एक रैखिक एल्गोरिथ्म का एक उदाहरण चाय बनाने की प्रक्रिया होगी:

  1. केतली में पानी डालो।
  2. स्टोव पर केतली को उबालने के लिए रख दें।
  3. एक कप लो।
  4. एक कप में चाय डालें।
  5. चीनी डालें।
  6. उबलने के बाद, उबलते पानी को एक कप में डालें।
  7. एक चम्मच लें।
  8. चीनी में हिलाओ।

बुनियादी एल्गोरिथम निर्माण को प्रोग्रामिंग करना काफी मुश्किल है, लेकिन जब रैखिक एल्गोरिदम की बात आती है, तो उन्हें लागू करना अक्सर बहुत आसान होता है।

बुनियादी एल्गोरिथम निर्माण पर लागू नहीं होता है

फोर्किंग एल्गोरिदम

आपको कैसे पता चलेगा कि एक एल्गोरिथ्म शाखा है?यह सुनिश्चित करने के लिए पर्याप्त है कि कार्रवाई के लिए दो या अधिक विकल्पों का विकल्प है, इस पर निर्भर करता है कि शर्त पूरी हुई या नहीं। प्रत्येक पथ को एक शाखा कहा जाता है।

ब्रांचिंग एल्गोरिथ्म की मुख्य विशेषता एक सशर्त शाखा का अस्तित्व है। यह तब होता है जब एक अभिव्यक्ति का परीक्षण सही या गलत के लिए किया जाता है।

आमतौर पर, तार्किक अभिव्यक्तियों द्वारा प्रतिनिधित्व किया जाता हैसंकेत "से कम", "अधिक से अधिक", "कम या बराबर", "से अधिक या बराबर", "बराबर", "बराबर"। कभी-कभी ऐसे संस्करण होते हैं जहां और (और) और या (या) आदेशों का उपयोग करके स्थिति एक दूसरे से संबंधित होती है।

इस तरह के एक एल्गोरिथ्म का एक उदाहरण समाधान हो सकता हैअगला कार्य: यदि अभिव्यक्ति ((x + 3) / 1) एक सकारात्मक संख्या के बराबर है, तो स्क्रीन पर परिणाम प्रदर्शित करें, यदि नकारात्मक है, तो उपयोगकर्ता को त्रुटि के बारे में सूचित करें।

व्यवहार में बुनियादी एल्गोरिथम निर्माण का उपयोग करना काफी सरल है। ब्रांचिंग सबसे आम समाधान विधियों में से एक है।

नियतात्मक या काउंटर लूप

काउंटर चक्र - एक चक्र जिसमें शामिल हैएक चर जो वेतन वृद्धि में मूल्य बदलता है। कदम उपयोगकर्ता द्वारा निर्धारित किया जाता है या सॉफ्टवेयर लिखते समय प्रोग्रामर द्वारा लिखा जाता है। अधिकांश भाषाएं ऐसे लूप के लिए कथन के लिए उपयोग करती हैं।

कार्यक्रम को 4 बार दो लाइन प्रदर्शित करने के लिए:

  1. "क्या हाल है?"
  2. "खैर धन्यवाद!"
  3. "क्या हाल है?"
  4. "खैर धन्यवाद!"

आपको एक नियतकालिक लूप बनाने की आवश्यकता है। यह कैसा दिखता है? आइए संरचना की बेहतर धारणा के लिए पास्कल भाषा का उपयोग करें।

1. मेरे लिए: = 1 से 2 करना:

- मैं लूप काउंटर है, यह वह है जो लूप में दोहराव की संख्या निर्धारित करता है।

2. आरंभ (ऑपरेटर कोष्ठक खोले जाते हैं ताकि दोनों वाक्यांश लूप के शरीर हों और एक साथ दोहराए जाएं।)

3. रिटेलन (‘आप कैसे हैं?’):

- रिटेल शब्द का अर्थ है एकल उद्धरणों में वाक्यांश का उत्पादन।

4. राइटेलन ("ठीक है, धन्यवाद")।

5. अंत।

6. आई: = आई + 1।

जैसा कि आप देख सकते हैं, बुनियादी एल्गोरिथम निर्माण का उपयोग करना काफी आसान और दिलचस्प भी है। मूल एल्गोरिदम वास्तव में व्यापक रूप से ज्ञात हैं, उनके बिना कार्यक्रमों को लिखना असंभव है।

बुनियादी एल्गोरिथम निर्माण रैखिक शाखाओं में बंटी चक्रीय

पोस्टपोंडेशन के साथ लूप

पोस्टकंडिशन वाला लूप दोहरा सकता हैऑपरेटर ब्रैकेट या मिश्रित शब्द सम्मिलित किए बिना क्रियाओं की अनिश्चित संख्या। यह निश्चित रूप से कम से कम एक बार निष्पादित किया जाएगा। हालत खराब होने पर लूप चलता है। यह तब रुकता है जब संकेतक सही हो जाते हैं। इस पर एल्गोरिथ्म बनाया गया है। इस प्रकार के बुनियादी एल्गोरिथम निर्माण इस गति से संचालित होते हैं।

इस चक्र को लागू करने के लिए, निर्माण की आवश्यकता हैबी। ए। तक दोहराएं, यह "झूठे कार्यों को दोहराता है जबकि स्थिति झूठी है।" तदनुसार, ए के माध्यम से, दोहराव प्रक्रिया स्वयं बी - डेटा के माध्यम से व्यक्त की जाती है, जिसके परिणामस्वरूप सही मूल्य पर लेना चाहिए।

बुनियादी एल्गोरिथम निर्माण बुनियादी एल्गोरिदम

पूर्व शर्त के साथ लूप

पोस्टकांड के साथ एक लूप का निर्माण इस तरह से किया जाता है किइसे किसी भी मामले में कम से कम एक बार निष्पादित किया जाता है। हालांकि, ऐसे मामले हैं जब किसी विशेष स्थिति की स्थिति में एक चक्र आवश्यक होता है, और इसकी अनुपस्थिति में पुनरावृत्ति नहीं की जानी चाहिए। अन्यथा, परिणाम गलत होगा। यह वह जगह है जहां एक पूर्व शर्त लूप का उपयोग किया जाता है। इसे बनाने के लिए, आपको "जबकि ए बी बी" निर्माण की आवश्यकता है। पहले आदेश का शाब्दिक अनुवाद "अलविदा" है। ए - स्थिति, और बी - क्रियाएं जो दोहराई जाएंगी। पूरे निर्माण का अर्थ है: "जब तक कि स्थिति सही है, तब तक कार्रवाई करें।"

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

बुनियादी एल्गोरिथम पुनरावृत्ति का निर्माण करता है

हेल्पर एलगोरिदम

सहायक एल्गोरिथ्म का उपयोग अन्य में किया जाता हैकेवल उसका नाम निर्दिष्ट करके प्रक्रियाएँ। यह मुख्य एल्गोरिथम निर्माण से संबंधित नहीं है। प्रोग्रामिंग भाषाओं में, क्रियाओं की ऐसी प्रक्रिया को एक सबरूटीन कहा जाता है। कोड के साथ काम करना आसान बनाने के लिए और बाद में अधिक आसानी से समस्याओं को हल करने के लिए, प्रत्येक क्रिया को एक ब्लॉक में संयोजित किया जाता है, जो एक सहायक एल्गोरिदम है। उनमें से प्रत्येक को एक नाम दिया जा सकता है, जो आपको बाद में इसे बार-बार संदर्भित करने की अनुमति देता है।

इसे पसंद किया:
0
लोकप्रिय पोस्ट
आध्यात्मिक विकास
भोजन
y