Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ एसटीएल में सूची असाइन करें () फ़ंक्शन

C++ में असाइनमेंट () फ़ंक्शन के कार्य को दिखाने का कार्य दिया गया है।

सूची ::असाइन () फ़ंक्शन सी ++ मानक टेम्पलेट लाइब्रेरी का एक हिस्सा है। इसका उपयोग किसी सूची में मान निर्दिष्ट करने और एक सूची से दूसरी सूची में मानों की प्रतिलिपि बनाने के लिए भी किया जाता है।

इस फ़ंक्शन को कॉल करने के लिए <सूची> हेडर फ़ाइल शामिल की जानी चाहिए।

सिंटैक्स

नए मान निर्दिष्ट करने का सिंटैक्स इस प्रकार है -

List_Name.assign(size,value)

सिंटैक्स

मानों को एक सूची से दूसरी सूची में कॉपी करने का सिंटैक्स इस प्रकार है -

First_List.assign(Second_List.begin(),Second_list.end())

पैरामीटर

फ़ंक्शन दो पैरामीटर लेता है -

पहला आकार है, जो सूची के आकार का प्रतिनिधित्व करता है और दूसरा मूल्य है, जो सूची के अंदर संग्रहीत किए जाने वाले डेटा मान का प्रतिनिधित्व करता है।

रिटर्न वैल्यू

फ़ंक्शन का कोई वापसी मूल्य नहीं है।

उदाहरण

Input: Lt.assign(3,10)
Output: The size of list Lt is 3.
The elements of the list Lt are 10 10 10.

स्पष्टीकरण -

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

उदाहरण

Input: int array[5] = { 1, 2, 3, 4 }
Lt.assign(array,array+3)
Output: The size of list Lt is 3.
The elements of the list Lt are 1 2 3.

स्पष्टीकरण -

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

उपयोगकर्ता को केवल असाइन () फ़ंक्शन के अंदर पहले तर्क के रूप में सरणी का नाम पास करना होगा, और दूसरा तर्क सरणी का नाम होना चाहिए, फिर एक "+" चिह्न होना चाहिए, जिसके बाद उपयोगकर्ता जितने तत्व चाहता है सूची में असाइन करें।

उपरोक्त मामले में हमने 3 लिखा है, इसलिए सरणी के पहले तीन तत्वों को सूची में असाइन किया जाएगा।

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

निम्नलिखित कार्यक्रम में उपयोग किया गया दृष्टिकोण इस प्रकार है -

  • सबसे पहले एक फंक्शन शोलिस्ट (सूची एल) बनाएं जो सूची के तत्वों को प्रदर्शित करेगा।
  • एक पुनरावर्तक बनाएं, मान लें कि itr जिसमें प्रदर्शित होने वाली सूची का प्रारंभिक तत्व होगा।
  • लूप को तब तक चलाएं जब तक कि itr सूची के अंतिम तत्व तक न पहुंच जाए।
  • फिर मुख्य() फ़ंक्शन के अंदर सूची का उपयोग करके तीन सूचियां बनाएं मान लें कि L1, L2 ad L3 ताकि वे int प्रकार के मान स्वीकार करें और फिर int प्रकार की एक सरणी बनाएं, मान लें कि arr[] और इसे असाइन करें कुछ मान।
  • फिर सूची L1 में आकार और कुछ मान निर्दिष्ट करने के लिए असाइन () फ़ंक्शन का उपयोग करें और फिर सूची L1 को ShowDisplay() फ़ंक्शन में पास करें।
  • फिर सूची L1 के तत्वों को L2 में कॉपी करने के लिए असाइन () फ़ंक्शन का उपयोग करें और सूची L2 को शोलिस्ट () फ़ंक्शन में पास करें।
  • फिर सूची L3 में arr[] सरणी के तत्वों को कॉपी करने के लिए असाइन () फ़ंक्शन का उपयोग करें और सूची L3 को डिस्प्लेलिस्ट () फ़ंक्शन में पास करें।

एल्गोरिदम

Start
Step 1-> Declare function DisplayList(list<int> L) for showing list elements
   Declare iterator itr
   Loop For itr=L.begin() and itr!=L.end() and itr++
   Print *itr
   End
Step 2-> In function main()
   Declare lists L1,L2,L3
   Initialize array arr[]
   Call L1.assign(size,value)
   Print L1.size();
   Call function DisplayList(L1) to display L1
   Call L2.assign(L1.begin(),L1.end())
   Print L2.size();
   Call function DisplayList(L2) to display L2
   Call L3.assign(arr,arr+4)
   Print L3.size();
   Call function DisplayList(L3) to display L3
Stop

उदाहरण

#include<iostream>
#include<list>
using namespace std;
int ShowList(list<int> L) {
   cout<<"The elements of the list are ";
   list<int>::iterator itr;
   for(itr=L.begin(); itr!=L.end(); itr++) {
      cout<<*itr<<" ";
   }
   cout<<"\n";
}
int main() {
   list<int> L1;
   list<int> L2;
   list<int> L3;
   int arr[10] = { 6, 7, 2, 4 };
   //assigning size and values to list L1
   L1.assign(3,20);
   cout<<"The size of list L1 is "<<L1.size()<<"\n";
   ShowList(L1);
   //copying the elements of L1 into L3
   L2.assign(L1.begin(),L1.end());
   cout<<"The size of list is L2 "<<L2.size()<<"\n";
   ShowList(L2);
   //copying the elements of arr[] into list L3
   L3.assign(arr,arr+4);
   cout<<"The size of list is L3 "<<L3.size()<<"\n";
   ShowList(L3);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

The size of list L1 is 3
The elements of the list are 20 20 20
The size of list L2 is 3
The elements of the list are 20 20 20
The size of list L3 is 4
The elements of the list are 6 7 2 4

स्पष्टीकरण

सूची L1 के लिए हमने असाइन () फ़ंक्शन में आकार 3 और मान 20 दिया, जिसने उपरोक्त आउटपुट उत्पन्न किया था।

फिर हमने सूची L1 के तत्वों को उस L2 में कॉपी किया जो L2 को L1 के समान आकार और मान देता है जैसा कि हम आउटपुट में देख सकते हैं।

फिर हमने सरणी के सभी तत्वों को कॉपी करने के लिए असाइन फ़ंक्शन का उपयोग किया arr[] जिसने L3 के आकार को 4 के बराबर बना दिया और इसके तत्वों को आउटपुट के रूप में सरणी के तत्वों के समान बना दिया।


  1. सी ++ एसटीएल में रिवर्स फ़ंक्शन सूचीबद्ध करें

    इस लेख में हम C++ में काम करने, वाक्य रचना और सूची ::रिवर्स () फ़ंक्शन के उदाहरणों पर चर्चा करेंगे। STL में सूची क्या है सूची एक डेटा संरचना है जो अनुक्रम में कहीं भी निरंतर समय सम्मिलन और विलोपन की अनुमति देती है। सूचियों को डबल लिंक्ड सूचियों के रूप में लागू किया जाता है। सूचियाँ गैर-सन्निहित स्म

  1. सी ++ एसटीएल में सूची वापस () फ़ंक्शन

    c++ में लिस्ट बैक () फंक्शन की कार्यप्रणाली को दिखाने का कार्य दिया गया है। सूची ::बैक () फ़ंक्शन सी ++ मानक टेम्पलेट लाइब्रेरी का एक हिस्सा है। इसका उपयोग किसी भी सूची के अंतिम तत्व को प्रदर्शित करने के लिए किया जाता है। इस फ़ंक्शन को कॉल करने से पहले हेडर फ़ाइल शामिल की जानी चाहिए। सिंटैक्स Lis

  1. सी ++ एसटीएल में डेक असाइन () फ़ंक्शन

    यह देखते हुए कि कार्य C++ STL में deque::assign() की कार्यप्रणाली को दिखाना है। Deque एक डबल एंडेड कतार है। C++ में, deque::assign() एक इनबिल्ट फंक्शन है जिसका उपयोग डेक कंटेनर को नया मान असाइन करने के लिए किया जाता है। हर बार इस फ़ंक्शन को कहा जाता है, यह मौजूदा मानों को बदलकर और तदनुसार आवंटित आक