सामग्री पर जाएँ
Topos Uranos

सारांश

यह पाठ पाठ्यक्रम की छठी इकाई खोलता है, जो संयुक्त डेटा को समर्पित है। यह बताता है कि इकाई किसलिए है: डेटा के संग्रहों (स्थिर और परिवर्ती आकार के अनुक्रम, तालिकाएँ और रिकॉर्ड) को निरूपित करना और उन्हें बुनियादी एल्गोरिदमों से संसाधित करना सिखाना, चाहे वे हाथ से लिखे गए हों या लाइब्रेरी से लिए गए हों, और यह अनुमान लगाना कि उनकी लागत कितनी है; इसके छह पाठों और उन्हें जोड़ने वाले सूत्र को प्रस्तुत करता है; उसे याद दिलाता है जिसे इकाई ज्ञात मानती है, ख़ासकर निश्चर वाले लूप और कॉन्स्ट रेफ़रेंस द्वारा पास करना; वह समस्या सामने रखता है जिसे इकाई हल करती है, यानी ऐसे प्रोग्राम की समस्या जिसे ऐसा डेटा सहेजना है जिसकी मात्रा वह नहीं जानता और जो अलग-अलग चरों से लिखे जाने पर अतिरिक्त डेटा को चुपचाप छोड़ देता है; लागत का पूर्वाभास एल्गोरिदम के दूसरे माप के रूप में कराता है, उसकी शुद्धता के साथ; और दिखाता है कि यह इकाई आगे की इकाइयों में और C++ में प्रोग्रामिंग II पाठ्यक्रम में कहाँ ले जाती है।

अधिगम उद्देश्य

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

प्रवेश मूल्यांकन

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

प्रवेश मूल्यांकन

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

  1. प्रश्न 1पिछली इकाइयों सेकोड का अंश int largest{0}; int t{}; while (std::cin >> t) { if (t > largest) { largest = t; } } को largest में पढ़े गए तापमानों में से सबसे बड़ा छोड़ना चाहिए। यह किस इनपुट पर विफल होता है?

  2. प्रश्न 2पिछली इकाइयों सेएक फ़ंक्शन गिनता है कि दस लाख कैरेक्टरों वाले किसी टेक्स्ट में, जो एक std::string में सहेजा गया है, कितने स्वर हैं, और उसे बदलता नहीं। उसके पैरामीटर को कैसे घोषित करना उचित है?

  3. प्रश्न 3पिछली इकाइयों से++count कितनी बार निष्पादित होता है, for (int i{0}; i < 6; ++i) { for (int j{0}; j < i; ++j) { ++count; } } में?

  4. प्रश्न 4पिछली इकाइयों सेstd::println("{}", 0u - 1); ऐसे सिस्टम पर क्या लिखता है जिसमें unsigned int 32 बिट का हो?

  5. प्रश्न 5nn अवयवों वाले किसी अनुक्रम में, जिसे C++ की तरह क्रमांकित किया गया है, कौन-से इंडेक्स ii किसी अवयव को इंगित करते हैं?

  6. प्रश्न 6v में क्या होता है, std::vector<int> v(3, 7); के बाद?

  7. प्रश्न 7for (int m{1024}; m > 1; m /= 2) { ... } कितने चक्कर लगाता है?

  8. प्रश्न 8एक टेलीफ़ोन निर्देशिका में दस लाख नाम वर्णानुक्रम में हैं। किसी एक को खोजने के लिए उसे बीच से खोला जाता है, वह आधा हिस्सा छोड़ दिया जाता है जिसमें नाम हो ही नहीं सकता, और दूसरे आधे के साथ यही दोहराया जाता है। उसे अधिक से अधिक कितनी बार खोलना पड़ता है?

  9. प्रश्न 9std::vector<std::vector<int>> t{{1, 2, 3}, {4, 5, 6}}; के साथ t[1][0] और t.size() के मान क्या हैं?

  10. प्रश्न 10एक प्रोग्राम किसी समूह के नाम एक वेक्टर में और उनके ग्रेड दूसरे में सहेजता है, इस तरह कि ग्रेड grades[i] उसी का है जिसका नाम names[i] है। अगर वह केवल ग्रेडों वाले वेक्टर को क्रमबद्ध करे, तो क्या होता है?