जनावर राज्य कुनै पनि समाचार व्यक्तिगत व्यक्त कि "चाहनुहुन्छ" केही प्राथमिकताहरू एल्गोरिदम प्रयोग गर्दछ। हामी एक संभावित कृत्रिम intelligences पनि यस्तै कुरा प्रयोग गर्नेछ भन्न सकिन्छ। तबसम्म सबैभन्दा राम्ररी को कार्यान्वयन गर्न branching संग एल्गोरिदम संसारमा धन्यवाद को मानव धारणा नजिक। र तिनीहरूले यो लेख आफ्नो तर्क र सुविधाहरू व्याख्या मा छलफल गरिनेछ।
यस तर्कको के छ कार्यक्रम मा branching संग?
मुख्य विषय गर्न अघि बढ्नु अघि, यो सिद्धान्त मा एउटा सानो digression बनाउन आवश्यक छ। यस तर्कको कार्यहरू स्पष्ट अनुक्रम, एक निश्चित लक्ष्य हासिल वा समस्या समाधान गर्ने लक्ष्य लिएको छ जो भनिन्छ। तीन प्रकार मा विभाजित छन्:
- Linear।
- branching संग।
- चक्रीय।
हामी अल्गोरिदम branching रुचि हो, त्यसैले यसलाई मात्र वर्णन गरिनेछ। यो टोली एक चयन प्रक्रिया वा समारोह प्रदान गर्दछ, र केहि अवस्थामा, त्यो छ, क्षण मा, वहाँ एक विकल्प छ। एक अल्गोरिदम यस्तो संरचना branching भनिन्छ। यो धेरै विकल्प बीच एक विकल्प प्रदान गर्दछ। को बाटो (प्रायजसो) प्रत्येक कोड मा एक साधारण बिन्दु गर्न जान्छ। तपाईं एक निश्चित कार्य छोड्न चाहनुहुन्छ जब Branching एउटा महत्त्वपूर्ण छ र। प्रयोगकर्ता एक विकल्प प्रस्तुत गर्दा, र यो विकल्प भविष्यमा कामको लागि सम्झना गर्नुपर्छ यसलाई प्रयोग गर्नुहोस्। branching संग, सामान्य उपयोगी र सजिलो यी एल्गोरिद्म। ग्रेड 6 सैद्धांतिक पनि बुझ्न र अभ्यास मा यस ज्ञान लागू गर्न सक्षम। तपाईं प्रश्न छ भने - लेख, सम्भवत, तिनीहरूले यो प्रक्रिया पूरा भएपछि रहने छैन।
branching संग एल्गोरिदम प्रयोग
यो सिर्फ यति जहाँ सबै कुनै विकल्प संग गर्न सकिन्छ अवस्थामा नगण्य असम्भाव्य छ कि भयो, त्यसैले विकल्प संभावित उत्पन्न गर्न सक्छ के मार्फत सोच्न आवश्यक छ। त्यसैले, जीवन एउटा समानान्तर चित्रकला, तपाईं मौसम को एक क्लासिक उदाहरण ल्याउन सक्छन्: यो snows जब यो तातो बाहिर छ भने, तपाईंले एक टी-शर्ट र छोटकरीमा लगाउने गर्नुपर्छ - ज्याकेट। जो एक व्यक्ति (वा काम कार्यक्रम) को भविष्यमा जीवन असर गर्न सक्छ उत्पन्न र थप जटिल विकल्प। एल्गोरिदम विस्तार र कदम को विवरण को जटिलता द्वारा फरक। त्यसैले, बस सीमित विवरण आफैलाई लागि एक बेन्चमार्क (के र कसरी काम गर्नुपर्छ) सिर्जना गर्न प्रयोग गर्न सकिन्छ। तर कम्प्युटरको त ध्यान एक सवारी छ। यो प्रत्येक समस्याको चरण समाधान द्वारा एक कदम हुनुपर्छ। यस तर्कको बारी मा, लगभग अनिश्चितकालीन जारी हुन सक्छ जो, branching समावेश छ। हुनत व्यवहार मा यो समस्या को सम्पादन लिखित कोड हो। केही परिप्रेक्ष्य दिन, हामी यी प्रकारका थाह गर्न प्रस्ताव:
- सरल। तपाईं स्वस्थ हुन चाहनुहुन्छ भने, तपाईंले खेल खेल्न आवश्यक छ।
- जटिल। त्यहाँ स्वस्थ हुन इच्छा छ? यदि हो, त्यसपछि खेल मा जानुहोस्। भने, ओछ्यानमा झूठ र टिभी हेर्न।
- अपूर्ण branching संग जटिल फारम। तपाईं बाहिर जान आवश्यक छ। यस वर्षा आउँछ गर्छ? यदि, तपाईं बस छोड्न सक्नुहुन्छ। त्यहाँ एक हो भने - एक छाता लिन। त्यसपछि जाने बाहिर।
सामान्य मा एल्गोरिदम सिर्जना
यहाँ तपाईँले branching, जसमा कार्यक्रम सञ्चालन गर्नेछ भएको अल्गोरिदम सिर्जना गर्नुहोस्। त्यहाँ एक योजनाबद्ध को विकल्प फोटो इच्छा छ भने, तपाईं हीरा भेट्नुपर्छ हुनेछ। सुझाव जनाउँछ संकेत प्रसारण, र बाँकी तीन पक्ष मा बाहिर प्रतिक्रियाहरू वितरण। बस दुई: यस आवश्यक ती सबै प्रयोग गर्दैन। विषमकोण, खैर, यो कार्य संकेत गर्न प्रयोग गरिन्छ जो शाखा संचालक छ। तर हामी अगाडि एक सानो बिट गयौं। कसरी कुनै पनि काम सुरु गर्न? डाटा को रसिद! यस तर्कको को निर्माण मा हामी काम गर्दै के डाटा निर्दिष्ट गर्न नबिर्स। साथै, त्यहाँ सधैं तार्किक निष्कर्षमा हुनुपर्छ। आखिर, जहाँ विश्रामहरू प्रोसेसर को एक "सदैव" प्रयोग हुन सक्छ थाह एउटा अल्गोरिदम र खेल बस freezes। जो, पाठ्यक्रम, नकारात्मक प्रतिक्रिया कारण हुनेछ।
के योजना र तर्कको को व्यावहारिक कार्यान्वयन सिर्जना गर्न आवश्यक छ?
योजना को चित्रण गर्न अघि बढ्नु अघि, यो राम्रो सिक्न आवश्यक छ, कि त भन्ने भविष्यमा कुनै तार्किक त्रुटिहरू थियो के, को लागि जिम्मेवार छ। यो जसमा तपाईं एक कार्यक्रम लेख्न योजना कार्यक्रम भाषाहरूका branching संग एल्गोरिदम को कार्यान्वयन सबै nuances सिक्न आवश्यक पनि छ। भविष्यमा समस्या जोगिन गर्न, तपाईं मा आफ्नो कौशल गर्न आवश्यक "सफा स्लेट।" सबै पछि, हामी कुरा कसरी काम बुझ्न भने, कुनै पनि समस्या बिना अधिकांश समय को कार्यान्वयन। तपाईं समस्याको सामना भने समस्या पहिचान गर्न, एक अल्गोरिदम न्यूनतम सञ्चालन कदम सिर्जना गर्न प्रयास गर्नुहोस्।
विशेष गरी जब सिर्जना
संभावित branching अनन्त हुन सक्छ। त्यसकारण, तिनीहरूले सिर्जना गर्दा सर्तहरू संख्या आफैलाई सीमित गर्न सक्दैन (थप तिनीहरूलाई को अन्त मा हुनत, नेभिगेट गर्नुहोस् गाह्रो गर्न)। पनि पूर्ण र अपूर्ण branching एक बिट। पहिलो, सायद, बुझ्ने के छ। र के अवस्थामा आंशिक र यो आवश्यक छ कि कसरी निर्धारण गर्न? त्यहाँ कार्यक्रम को संरचना को सुविधा संग जडान थप कार्यहरू पूरा गर्न, र सोही समयमा बस जारी विकल्प छ, या कोड तिनीहरूले प्रदान गरिन्छ जहाँ छैन को लाइन धक्का गर्नुपर्छ आवश्यक छ भने - यो ठीक मामला हो। र योजना निर्माण हुनेछ सम्पन्न, तर पूर्ण यसको कार्यक्षमता लागू गर्न।
उदाहरणका
हामीलाई यो ज्ञान राम्रो छ सिक्न दिनुहोस्, हामी सबै भनियो जानकारी एक सरल एप्लेटहरू प्रयोग गरि बुझ्न पर्छ। सबै पछि, अल्गोरिदम branching संग हल्का छ हुनत, उदाहरणहरू राम्रो के र कसरी बुझ्न हुनेछ। तपाईँलाई यो नियन्त्रण व्यक्ति वर्ण प्राप्त गर्नुपर्छ जसमा कम्प्युटर वर्ण टाढा एक सरल खेलौना, लेखिरहेका छौं भन्न गरौं। सम्पर्क तिनीहरूलाई बीच हुन्छ भने, त्यसपछि छोटो अवधि पछि यसलाई केही कार्य लगे छ (वर्ण ढिलो चलाउन सुरु वा साधारण अनुपलब्ध)। के यहाँ कसरी गर्न - विकल्प तपाईंको हो। तर अझै पनि आफ्नो योजना लागू गर्न प्रोग्रामर गर्न खुला छन् कि विभिन्न गतिविधिहरु को एक पक्ष विचार गर्नुपर्छ। त्यसैले, तपाईं वर्ण को "जीवन" लाग्न सक्छ वा नायक प्रभाव केही क्रमबद्ध आयातित गर्न व्यवस्थित एक व्यक्ति सुस्त छ, र बारी मा, एक निश्चित समय अन्तराल मा काम गर्दछ जो, चक्र, काम गर्दा यो प्रभावकारी थियो। अन्तिम विकल्प तपाईंको हो।
afterword
त्यसैले, अन्त मा आवश्यक परिणाम माथि भने गरिएको केहि ल्याउन। branching संग एल्गोरिदम सहित कार्यक्रम को घटक, मास्टर, यो कठिन, राम्रो प्रयास भने छ। यो आवश्यक छ के सबै काम गर्न सिक्न आवश्यक छ। सबै भन्दा राम्रो प्रभाव प्राप्त ज्ञान को व्यावहारिक कार्यान्वयन हुनेछ लागि यो पनि उपयोगी छ। तपाईं बिस्तारै आईडीई यसलाई स्थानान्तरणका, मार्फत कागज मा अल्गोरिदम वा इलेक्ट्रोनिक फाइल मा काम, सरल कुरा सुरु गर्न सक्नुहुन्छ।