शिक्षा

एल्गोरिथ्म क्या है? »इसकी परिभाषा और अर्थ

विषयसूची:

Anonim

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

एक एल्गोरिथ्म क्या है

विषय - सूची

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

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

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

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

एक एल्गोरिथ्म के लक्षण

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

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

एक एल्गोरिथ्म के भाग

हर एल्गोरिदम ऑपरेशन में तीन अलग-अलग भाग होते हैं जो एक सिस्टम की मूल संरचना के अधीन होते हैं और ये हैं:

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

एल्गोरिदम के उदाहरण

गणित की गणना के सामान्य उदाहरणों में जोड़ के लिए 2 + 3 = 5 और घटाव के लिए 15-9 = 6 शामिल हैं । सरल एल्गोरिदम की कल्पना करने का एक और तरीका रसोई के व्यंजनों में है, क्योंकि वे एक विशिष्ट और व्यवस्थित प्रक्रिया का वर्णन करते हैं, उदाहरण के लिए, "पहले आपको पानी के एक आधे बर्तन को गर्म करने के लिए रखना चाहिए, फिर आपको नमक की एक चुटकी और अंत में जोड़ना होगा। मिर्च को बीज और तंत्रिकाओं को निकालने के लिए विभाजित किया जाएगा। " इस मॉडल में एक शुरुआत, एक प्रक्रिया और एक अंत प्रस्तुत किया जाता है, जो मूल रूप से एल्गोरिदम को परिभाषित करता है।

एल्गोरिथम प्रकार

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

अपने साइन सिस्टम के अनुसार

गुणात्मक और मात्रात्मक इस श्रेणी में स्थित हैं।

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

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

इसके कार्य के अनुसार

इस वर्गीकरण में निम्नलिखित स्थित हैं।

1. अंकन एल्गोरिथ्म

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

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

2. संभाव्य एल्गोरिदम

वे वे हैं जिनमें परिणाम प्राप्त करने का तरीका संभावनाओं पर निर्भर करता है, इन्हें आमतौर पर यादृच्छिक एल्गोरिदम के रूप में जाना जाता है।

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

इसके अलावा, इस समूह के भीतर तीन मुख्य प्रकार हैं जिन्हें संख्यात्मक, मोंटे कार्लो और लास वेगास के रूप में जाना जाता है।

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

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

3. ह्यूरिस्टिक एल्गोरिदम

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

4. बैकग्राउंडिंग एल्गोरिदम

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

5. लालची एल्गोरिथ्म

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

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

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

समस्या का विवरण

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

सामान्य समाधान का विश्लेषण

एक बार समस्या को परिभाषित करने के बाद, निम्नलिखित का विश्लेषण करने का समय आ गया है:

  • टिकटों की जानकारी जो वे हमें प्रदान करते हैं।
  • वांछित परिणाम।
  • काम, बयान या अन्य आवश्यक तत्वों का डोमेन।

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

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

एल्गोरिथ्म का विस्तार

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

बाद में, मॉड्यूल की संबंधित पहचान निष्पादित की जाती है, क्योंकि एल्गोरिदम का सही क्रियान्वयन इस पर निर्भर करता है कि ऊपर बताई गई आवश्यकताओं के लिए संभव समाधान प्रदान करें।

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

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

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

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

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

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