Follow Us
माध्यम चुनें / Select Medium:
Eng (English) Hindi (हिन्दी)
ICSE • कक्षा X • Information Technology • अध्याय 1
अनुमानित समय: 45 Mins
प्रगति: अध्ययनरत

कक्षा 9वीं के पाठ्यक्रम का संशोधन (Revision of Class IX Syllabus)

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

यह अध्याय क्यों महत्वपूर्ण है

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

अध्याय रूपरेखा एवं प्रगति

1 1। ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (...
2 2. जावा वर्चुअल मशीन (जेवीएम), बाइट...
3 3. जावा टोकन, आदिम डेटा प्रकार और म...
4 4. प्रकार कास्टिंग, रूपांतरण पदानुक...
5 5. ऑपरेटर्स, वरीयता पदानुक्रम और उप...
6 6. नियंत्रण प्रवाह: चयन, पुनरावृत्त...
7 7. मानक गणित पुस्तकालय कार्य (java....
8 8. आईसीएसई बोर्ड परीक्षा आउटपुट ट्र...

सम्पूर्ण सैद्धांतिक एवं वैचारिक अध्ययन

1। ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (ओओपी) सिद्धांत और प्रतिमान वास्तुकला

कोर ओओपी सिद्धांत
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के चार स्तंभ:

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

के माध्यम से हासिल किया गया।
OOP सिद्धांत परिभाषा एवं संकल्पनात्मक तंत्र रियल-वर्ल्ड सादृश्य और जावा सिंटैक्स
एनकैप्सुलेशन डेटा (फ़ील्ड/वेरिएबल) और उस डेटा पर काम करने वाली विधियों को एक इकाई (क्लास) में लपेटना, एक्सेस स्पेसिफायर (डेटा छिपाना) के माध्यम से सीधे बाहरी पहुंच को प्रतिबंधित करना। एक मेडिकल कैप्सूल जिसमें औषधीय तत्व होते हैं। जावा में, इंस्टेंस वेरिएबल private घोषित करना और public गेटर और सेटर विधियां प्रदान करना।
अमूर्त पृष्ठभूमि विवरण या आंतरिक कार्यान्वयन जटिलताओं को शामिल किए बिना आवश्यक सुविधाओं का प्रतिनिधित्व करने का कार्य। ईंधन इंजेक्शन या अंतर गियर अनुपात को समझने की आवश्यकता के बिना एक्सीलेटर और स्टीयरिंग दबाकर ऑटोमोबाइल चलाना। जावा में, इंटरफेस और एब्सट्रैक्ट क्लासेस के माध्यम से हासिल किया गया।
विरासत वह तंत्र जिसके द्वारा एक वर्ग (उपवर्ग/बच्चा) मौजूदा वर्ग (सुपरक्लास/पैरेंट) की स्थिति और व्यवहार प्राप्त करता है, कोड पुन: प्रयोज्यता को बढ़ावा देता है। एक बच्चा जिसे जैविक माता-पिता से शारीरिक गुण विरासत में मिलते हैं। जावा में extends कीवर्ड का उपयोग करके कार्यान्वित किया गया (उदाहरण के लिए, क्लास कार एक्सटेंड्स)।
बहुरूपता किसी संदेश, फ़ंक्शन या विधि को एक से अधिक रूपों में प्रदर्शित करने की क्षमता (ग्रीक से ली गई: poly = अनेक, morf = रूप). एक व्यक्ति घर पर, कक्षा में और अस्पताल में अलग-अलग व्यवहार कर रहा है। जावा में, संकलन-समय पर मेथड ओवरलोडिंग के माध्यम से और रनटाइम पर मेथड ओवरराइडिंग.
प्रक्रियात्मक बनाम वस्तु-उन्मुख प्रतिमान:
  • प्रक्रियात्मक: टॉप-डाउन दृष्टिकोण, फ़ंक्शंस/एल्गोरिदम पर जोर, डेटा सिस्टम के चारों ओर फ़ंक्शन से फ़ंक्शन तक खुले तौर पर घूमता है, कम सुरक्षा और प्रोग्राम स्केल के रूप में बनाए रखना मुश्किल है।
  • ऑब्जेक्ट-ओरिएंटेड: बॉटम-अप दृष्टिकोण, डेटा सुरक्षा पर जोर, डेटा तक पहुंच को क्लास विधियों, अत्यधिक मॉड्यूलर, पुन: प्रयोज्य और स्केलेबल के माध्यम से सख्ती से विनियमित किया जाता है।

2. जावा वर्चुअल मशीन (जेवीएम), बाइटकोड और प्लेटफ़ॉर्म इंडिपेंडेंस

निष्पादन पाइपलाइन
जावा संकलन एवं निष्पादन यांत्रिकी:

जावा की क्रांतिकारी विशेषता प्लेटफ़ॉर्म स्वतंत्रता है, जो सन माइक्रोसिस्टम्स के नारे में प्रसिद्ध है: "एक बार लिखें, कहीं भी भागें" (WORA)। जेडीके, जेआरई, जेवीएम और बाइटकोड के बीच वास्तुशिल्प अंतर को समझना एक अनिवार्य आईसीएसई बोर्ड विषय है।

1. जावा डेवलपमेंट किट (जेडीके):

जावा अनुप्रयोगों को विकसित और संकलित करने के लिए आवश्यक संपूर्ण सॉफ़्टवेयर पैकेज। इसमें जावा कंपाइलर (javac), डिबगर्स, आर्काइवर्स (jar), और जावा रनटाइम एनवायरनमेंट (JRE) शामिल हैं।

2. जावा रनटाइम एनवायरनमेंट (JRE):

पहले से संकलित जावा अनुप्रयोगों को चलाने के लिए आवश्यक सॉफ़्टवेयर वातावरण। यह JVM को कोर क्लास लाइब्रेरीज़ (उदाहरण के लिए, rt.jar) और सपोर्टिंग बायनेरिज़ के साथ बंडल करता है।

3. जावा वर्चुअल मशीन (JVM) और बाइटकोड:

जब Program.java नामक फ़ाइल में लिखा गया स्रोत कोड javac प्रोग्राम.java का उपयोग करके संकलित किया जाता है, तो कंपाइलर होस्ट सीपीयू के लिए मूल मशीन कोड का उत्पादन नहीं करता है। इसके बजाय, यह Bytecode नामक निर्देशों का एक मध्यवर्ती, अत्यधिक अनुकूलित सेट उत्पन्न करता है, जो Program.class.

नामक फ़ाइल में संग्रहीत होता है।
  • बाइटकोड: एक प्लेटफ़ॉर्म-न्यूट्रल बाइनरी प्रारूप जिसमें 8-बिट ऑपकोड शामिल हैं। इसे किसी भी भौतिक हार्डवेयर सीपीयू द्वारा सीधे निष्पादित नहीं किया जा सकता है।
  • JVM (जावा वर्चुअल मशीन): एक अमूर्त वर्चुअल कंप्यूटर जो मेमोरी में रहता है। जब प्रोग्राम चलता है (java प्रोग्राम), तो JVM बाइटकोड लाइन-बाय-लाइन की व्याख्या करता है या जस्ट-इन-टाइम (JIT) कंपाइलर.
  • का उपयोग करके हॉट स्पॉट को मूल मशीन निर्देशों में संकलित करता है।
  • आर्किटेक्चरल सिंथेसिस: जबकि जावा बाइटकोड 100% प्लेटफ़ॉर्म-स्वतंत्र है, जेवीएम स्वयं प्लेटफ़ॉर्म-निर्भर है (विंडोज़, मैकओएस और लिनक्स के लिए अलग-अलग जेवीएम बायनेरिज़ मौजूद हैं)। यह वास्तुशिल्प पृथक्करण निर्बाध क्रॉस-प्लेटफ़ॉर्म निष्पादन की गारंटी देता है।

3. जावा टोकन, आदिम डेटा प्रकार और मेमोरी स्टोरेज मैट्रिक्स

डेटा प्रकार और टोकन
टोकन: एक कार्यक्रम की सबसे छोटी व्यक्तिगत इकाइयाँ:

ए टोकन जावा कंपाइलर द्वारा मान्यता प्राप्त सबसे छोटा शाब्दिक घटक है। जावा प्रोग्राम में पांच टोकन श्रेणियां शामिल हैं:

  1. कीवर्ड: पूर्वनिर्धारित अर्थ वाले आरक्षित शब्द (जैसे, class, public, static, void, int, if, new). कीवर्ड का उपयोग पहचानकर्ता के रूप में नहीं किया जा सकता.
  2. पहचानकर्ता: कक्षाओं, विधियों और चरों को दिए गए उपयोगकर्ता-परिभाषित नाम। एक अक्षर, अंडरस्कोर (_), या डॉलर चिह्न ($) से शुरू होना चाहिए। किसी अंक से प्रारंभ नहीं किया जा सकता या इसमें विशेष विराम चिह्न नहीं हो सकते.
  3. शब्दांश (स्थिरांक): चरों को दिए गए निश्चित मान (जैसे, पूर्णांक §3738§, फ़्लोटिंग-पॉइंट 3.14F, वर्ण 'A', स्ट्रिंग "हैलो", बूलियन सत्य).
  4. ऑपरेटर: प्रतीक जो ऑपरेंड पर संचालन करते हैं (जैसे, +, -, *, /, %, &&, ?:).
  5. विराम चिह्नक/विभाजक: कोड को व्यवस्थित करने के लिए प्रयुक्त संरचनात्मक प्रतीक (जैसे, ;, {}, (), [], ,).
आदिम डेटा प्रकार विशिष्टता मैट्रिक्स:
डेटा प्रकार श्रेणी आकार (बाइट्स / बिट्स) मानों की सीमा डिफ़ॉल्ट मान
byteInteger1 बाइट (8 बिट्स)$-128$ से $+127$ ($-2^7$ से $2^7 - 1$)0
shortInteger2 बाइट्स (16 बिट्स)$-32,768$ से $+32,767$ ($-2^{15}$ से $2^{15} - 1$)0
intपूर्णांक4 बाइट्स (32 बिट्स)$-2^{31}$ से $+2^{31} - 1$0
लंबापूर्णांक8 बाइट्स (64 बिट्स)$-2^{63}$ से $+2^{63} - 1$0L
फ्लोटफ्लोटिंग प्वाइंट4 बाइट्स (32 बिट्स)एकल परिशुद्धता ($pprox 7$ महत्वपूर्ण दशमलव अंक)0.0f
डबलफ्लोटिंग पॉइंट8 बाइट्स (64 बिट्स)डबल परिशुद्धता ($pprox 15$ महत्वपूर्ण दशमलव अंक)0.0d
charCharacter2 बाइट्स (16 बिट्स)यूनिकोड वर्ण ($0$ से $65,535$ / '\u0000' से '\uffff')'\u0000' (शून्य वर्ण)
बूलियनलॉजिकल1 बिट (आभासी)सत्य या झूठाझूठा

4. प्रकार कास्टिंग, रूपांतरण पदानुक्रम और अंकगणित संवर्धन

प्रकार रूपांतरण यांत्रिकी
निहित (विस्तारित) बनाम स्पष्ट (संकीर्ण) प्रकार रूपांतरण:

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

1. अंतर्निहित प्रकार रूपांतरण (स्वचालित चौड़ीकरण):

रनटाइम के दौरान स्वचालित रूप से होता है जब एक छोटे डेटा प्रकार का मान किसी बड़े डेटा प्रकार को सौंपा जाता है या उसके विरुद्ध मूल्यांकन किया जाता है। डेटा हानि का कोई जोखिम नहीं है. रूपांतरण पदानुक्रम सख्ती से इस प्रकार है:

बाइट → छोटा → इंट → लंबा → फ्लोट → डबल
चार → int

उदाहरण: int a = 25; डबल बी = ए; // मान्य: b 25.0

हो जाता है
2. स्पष्ट प्रकार रूपांतरण (संकीर्ण / प्रकार कास्टिंग):

व्यापक डेटा प्रकार को संकीर्ण डेटा प्रकार में परिवर्तित करते समय आवश्यक है। यह स्वचालित रूप से नहीं होता है क्योंकि इसमें काट-छाँट या सटीक हानि का जोखिम होता है। प्रोग्रामर को कास्ट ऑपरेटर का उपयोग करके कोष्ठक में लक्ष्य प्रकार को स्पष्ट रूप से निर्दिष्ट करना होगा: (target_type) अभिव्यक्ति.

उदाहरण 1 (फ्रैक्शनल ट्रंकेशन): डबल डी = 9.87; int i = (int)d; // मैं 9 हो गया, भिन्नात्मक भाग .87 हटा दिया गया!

उदाहरण 2 (पूर्णांक अतिप्रवाह रैप-अराउंड): int n = 130; बाइट बी = (बाइट)एन; //बी 8-बिट दो के पूरक अतिप्रवाह के कारण -126 हो जाता है!

अभिव्यक्तियों में स्वचालित प्रकार का प्रचार:
  • सभी byte, short, और char मानों को अंकगणितीय अभिव्यक्तियों का मूल्यांकन करने से पहले int में पदोन्नत किया जाता है।
  • यदि एक ऑपरेंड डबल है, तो संपूर्ण अभिव्यक्ति डबल को बढ़ावा देती है।
  • यदि उच्चतम ऑपरेंड float है, तो अभिव्यक्ति का मूल्यांकन float होता है; यदि लंबा, से लंबा.
  • उदाहरण: बाइट में b1 = 10, b2 = 20; बाइट b3 = b1 + b2;, कंपाइलर एक त्रुटि देता है: "int से बाइट में परिवर्तित नहीं हो सकता" क्योंकि b1 + b2 स्वचालित रूप से int में पदोन्नत हो जाता है। सही कोड: बाइट b3 = (बाइट)(b1 + b2);

5. ऑपरेटर्स, वरीयता पदानुक्रम और उपसर्ग बनाम पोस्टफ़िक्स मूल्यांकन

संचालक प्राथमिकता
मूल्यांकन पदानुक्रम और यूनरी ऑपरेटर्स:

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

प्राथमिकता ऑपरेटर श्रेणी ऑपरेटर सहयोगिता
1 (उच्चतम)पोस्टफिक्स यूनरीexpr++, expr--बाएं से दाएं
2प्रीफिक्स यूनरी और कास्ट++expr, --expr, +, -, !, (प्रकार)दाएँ से बाएँ
3गुणक*, /, %बाएं से दाएं
4Additive+, -बाएं से दाएं
5रिलेशनल<, >, <=, >=, instanceofबाएं से दाएं
6समानता==, !=बाएं से दाएं
7तार्किक AND& (शॉर्ट-सर्किट)बाएं से दाएं
8तार्किक OR|| (शॉर्ट-सर्किट)बाएं से दाएं
9टर्नरी कंडीशनल? :दाएँ से बाएँ
10 (न्यूनतम)असाइनमेंट=, +=, -=, *=, /=, %=दाएँ से बाएँ
उपसर्ग बनाम पोस्टफ़िक्स वृद्धि/कमी गहन विश्लेषण:

उपसर्ग बनाम उपसर्ग में परिवर्तनशील उत्परिवर्तन अनुक्रम पर विचार करें:

  • उपसर्ग (++x / --x): "उपयोग से पहले बदलें"। वेरिएबल की मेमोरी तुरंत अपडेट हो जाती है, और नया मान आसपास के एक्सप्रेशन पर वापस आ जाता है।
  • पोस्टफ़िक्स (x++ / x--): "परिवर्तन से पहले उपयोग करें"। वेरिएबल का वर्तमान मान अभिव्यक्ति को प्रदान किया जाता है, और फिर वेरिएबल की मेमोरी पृष्ठभूमि में उत्परिवर्तित होती है।
क्लासिक आईसीएसई एक्सप्रेशन ट्रेस वॉकथ्रू:
int a = 5;
int b = ++a + a++ + --a + a;
System.out.println("b = " + b + ", a = " + a);

चरण-दर-चरण निष्पादन:

  1. ++a: उपसर्ग वृद्धि। a 5 से 6 में बदल जाता है। आपूर्ति किया गया मूल्य = 6। (वर्तमान a = 6)
  2. a++: पोस्टफिक्स वेतन वृद्धि। आपूर्ति किया गया मूल्य = 6। इसके बाद, a बढ़कर 7 हो गया। (वर्तमान a = 7)
  3. --a: उपसर्ग कमी। a 7 से 6 में बदल जाता है। आपूर्ति किया गया मूल्य = 6। (वर्तमान a = 6)
  4. a: सरल चर पढ़ें। आपूर्ति किया गया मूल्य = 6.
  5. योग = $6 + 6 + 6 + 6 = 24$. अंतिम स्थिति: b = 24, a = 6.

6. नियंत्रण प्रवाह: चयन, पुनरावृत्ति और जंप संरचनाएं

नियंत्रण संरचनाएँ
1. निर्णय लेना (चयन विवरण):
  • if-else और डैंगलिंग एल्स: एक else क्लॉज हमेशा एक ही ब्लॉक के भीतर निकटतम पूर्ववर्ती बेजोड़ if के साथ जोड़ा जाता है, जब तक कि ब्रेसिज़ {}.
  • द्वारा बदला न जाए
  • स्विच-केस आर्किटेक्चर: एक बहु-शाखा चयन विवरण जो निरंतर शाब्दिक मूल्यों (केस लेबल) के विरुद्ध एक अभिव्यक्ति की तुलना करता है।
    • संगत प्रकार: byte, short, char, int, String (Java 7+ से), और enum। (फ्लोट और डबल पूरी तरह से अवैध हैं)।
    • फ़ॉल-थ्रू घटना: यदि एक केस ब्लॉक ब्रेक; स्टेटमेंट के साथ समाप्त नहीं होता है, तो मिलान की परवाह किए बिना बाद के केस स्टेटमेंट्स में बिना शर्त कैस्केड को नियंत्रित करें, जब तक कि ब्रेक या समापन न हो जाए ब्रेस पहुंच गया है.
2. पुनरावृत्ति (लूप्स) तुलनात्मक वर्गीकरण:
लूप प्रकार नियंत्रण वर्गीकरण सिंटेक्स और निष्पादन तंत्र न्यूनतम निष्पादन
for लूप प्रवेश-नियंत्रित for(प्रारंभिकरण; परीक्षण_स्थिति; अद्यतन) { ... }
आदर्श तब जब पुनरावृत्तियों की सटीक संख्या पहले से ज्ञात हो।
0 बार (यदि प्रारंभिक स्थिति गलत है)
जबकि लूप प्रवेश-नियंत्रित जबकि(परीक्षण_स्थिति) { ...; अद्यतन; }
आदर्श तब होता है जब पुनरावृत्तियाँ किसी घटना/प्रहरी स्थिति पर निर्भर करती हैं।
0 बार
करें-जबकि लूप निकास-नियंत्रित do {...; अद्यतन; } while(test_condition);
लूप बॉडी निष्पादित होने के बाद स्थिति का मूल्यांकन किया जाता है। के बाद अर्धविराम ; अनिवार्य है जबकि().
कम से कम 1 बार
3. जंप स्टेटमेंट:
  • ब्रेक: अंतरतम संलग्न लूप या स्विच स्टेटमेंट को तुरंत समाप्त करता है, ब्लॉक के बाद स्टेटमेंट पर नियंत्रण स्थानांतरित करता है।
  • जारी रखें: लूप के वर्तमान पुनरावृत्ति में शेष कथनों को छोड़ देता है और सीधे अद्यतन अभिव्यक्ति (for में) या परीक्षण स्थिति (में) पर जाता है जबकि/करो-जबकि).
  • रिटर्न: वर्तमान विधि से तुरंत बाहर निकल जाता है, वैकल्पिक रूप से कॉलर को एक मान लौटाता है।

7. मानक गणित पुस्तकालय कार्य (java.lang.Math)

गणितीय कार्य
आईसीएसई बोर्ड परीक्षाओं में उच्च-आवृत्ति java.lang.गणित पद्धतियाँ:

Math वर्ग डिफ़ॉल्ट java.lang पैकेज का हिस्सा है और इसमें गणितीय गणना के लिए सभी स्थैतिक तरीके शामिल हैं। सेक्शन ए बोर्ड प्रश्नों के लिए सटीक पैरामीटर को याद रखना और डेटा प्रकार लौटाना महत्वपूर्ण है।

लौटाता है
विधि हस्ताक्षर विवरण एवं संचालन उदाहरण कॉल आउटपुट वैल्यू
डबल मैथ.पाउ(डबल ए, डबल बी) $a^b$ की गणना करता है ($a$ को $b$ की शक्ति तक बढ़ाया गया)। हमेशा double.गणित.पाउ(4.0, 3.0) 64.0
डबल गणित.sqrt(डबल ए) धनात्मक वर्गमूल $\sqrt{a}$ की गणना करता है। नकारात्मक तर्कों के लिए NaN लौटाता है। Math.sqrt(64.0) 8.0
डबल मैथ.सीबीआरटी(डबल ए) घनमूल $\sqrt[3]{a}$ की गणना करता है। ऋणात्मक संख्याओं को संभालता है. Math.cbrt(-27.0) -3.0
डबल मैथ.सील(डबल ए) सबसे छोटे गणितीय पूर्णांक $\ge a$ को डबल (ऊपर की ओर गोल) के रूप में लौटाता है। Math.ceil(-4.2)
Math.ceil(4.2)
-4.0
5.0
डबल मैथ.फ्लोर(डबल ए) सबसे बड़े गणितीय पूर्णांक $\le a$ को डबल (नीचे की ओर चक्कर) के रूप में लौटाता है। मैथ.फ्लोर(-4.8)
मैथ.फ्लोर(4.8)
-5.0
4.0
लंबा गणित.राउंड(डबल ए)
इंट गणित.राउंड(फ्लोट ए)
निकटतम पूर्णांक तक पूर्णांक ($a + 0.5$ फर्श)। डबल के लिए रिटर्न लंबा, फ्लोट के लिए int। मैथ.राउंड(4.5)
मैथ.राउंड(-4.5)
5
-4
डबल मैथ.एबीएस(डबल ए) मान का पूर्ण (सकारात्मक) परिमाण लौटाता है। इंट, लॉन्ग, फ्लोट, डबल के लिए ओवरलोडेड। मैथ.एबीएस(-12.8) 12.8
डबल गणित.यादृच्छिक() एक छद्म यादृच्छिक रिटर्न देता है डबल $\in [0.0, 1.0)$. (int)(गणित.यादृच्छिक() * 10) + 1 1 और 10 के बीच यादृच्छिक पूर्णांक

8. आईसीएसई बोर्ड परीक्षा आउटपुट ट्रेसिंग और एल्गोरिथम समस्या समाधान

बोर्ड ट्रेसिंग ड्रिल
कठोर बोर्ड ट्रेसिंग उदाहरण (उत्तर और तर्क के साथ प्रश्न):
ड्रिल 1: नेस्टेड टर्नरी मूल्यांकन
int x = 10, y = 20, z = 30;
पूर्णांक अधिकतम = (x > y) ? ((x > z) ? x : z) : ((y > z) ? y : z);
System.out.println("अधिकतम = " + अधिकतम);

चरण-दर-चरण तर्क: (x > y) (10 > 20) है जिसका मूल्यांकन झूठा होता है। नियंत्रण पहली शाखा को छोड़ देता है और ((y > z) ? y : z) का मूल्यांकन करता है। (20 > 30), false है, इसलिए अभिव्यक्ति z प्राप्त करती है, जो §2930§ है। आउटपुट: अधिकतम = 30.

ड्रिल 2: वेरिएबल म्यूटेशन के साथ फ़ॉल-थ्रू स्विच करें
int c = 2, k = 5;
स्विच (सी) {
    केस 1: k += 10; तोड़ना;
    केस 2: k *= 2;
    केस 3: k += 4; तोड़ना;
    डिफ़ॉल्ट: k = 0;
}
System.out.println("k = " + k);

चरण-दर-चरण तर्क: सी == 2 मिलान केस 2। k *= 2 $k = 5 \times 2 = 10$ बनाता है। क्योंकि केस 2 में कोई ब्रेक नहीं है;, केस 3 में फॉल-थ्रू होता है: k += 4 $k = 10 + 4 = 14$ बनाता है। फिर ब्रेक; निष्पादन रोक देता है। आउटपुट: k = 14.

ड्रिल 3: संख्या निकालने में मॉड्यूलो और डिवीजन अंकगणित
int n = 458, Rev = 0;
जबकि (एन > 0) {
    int d = n % 10;
    रेव = रेव * 10 + डी;
    एन /= 10;
}
System.out.println("उलटा = " + Rev);

ट्रेस तालिका:

Iterationnd = n % 10rev = Rev * 10 + dn /= 10
14588$0 \times 10 + 8 = 8$45
2455$8 \times 10 + 5 = 85$4
344$85 \times 10 + 4 = 854$0

लूप $n = 0$ से समाप्त हो जाता है। आउटपुट: उलट = 854.

सामान्य गलतियाँ एवं परीक्षक के जाल (Examiner Traps)

सामान्य भ्रम / गलत उत्तर

मान लें कि Math.pow(a, b) और Math.sqrt(a) पूर्णांक पारित होने पर एक पूर्णांक लौटाते हैं

सही वैज्ञानिक तथ्य

Math.pow() और Math.sqrt() हमेशा दोगुना लौटाते हैं, यहां तक कि पूर्ण वर्गों के लिए भी (उदाहरण के लिए, Math.sqrt(25) 5.0 लौटाता है, नहीं) 5).

सामान्य भ्रम / गलत उत्तर

फ्लोटिंग-पॉइंट डिवीजन के साथ पूर्णांक विभाजन को भ्रमित करना (उदाहरण के लिए, 5/2 को 2.5 के रूप में मूल्यांकन करना)

सही वैज्ञानिक तथ्य

जब दोनों ऑपरेंड पूर्णांक होते हैं, तो जावा पूर्णांक विभाजन करता है जो आंशिक भाग को छोटा करता है: 5/2 = 2. 2.5 प्राप्त करने के लिए, कम से कम एक ऑपरेंड को फ्लोटिंग-पॉइंट होना चाहिए (उदाहरण के लिए, 5.0) / 2 या (डबल)5 / 2).

सामान्य भ्रम / गलत उत्तर

डू-व्हाइल लूप में स्थिति के बाद अनिवार्य अर्धविराम को भूल जाना

सही वैज्ञानिक तथ्य

डू-व्हाइल लूप को अर्धविराम के साथ समाप्त होना चाहिए: 'करें {...} जबकि (स्थिति);'। अर्धविराम को हटाने से सिंटैक्स संकलन त्रुटि होती है।

सामान्य भ्रम / गलत उत्तर

स्विच-केस स्टेटमेंट में फ्लोट या डबल एक्सप्रेशन का उपयोग करना

सही वैज्ञानिक तथ्य

आईईईई 754 सटीक राउंडिंग समस्याओं के कारण स्विच एक्सप्रेशन में फ़्लोटिंग-पॉइंट प्रकार (फ्लोट, डबल) का उपयोग नहीं किया जा सकता है। केवल बाइट, शॉर्ट, चार, इंट, स्ट्रिंग और एनम मान्य हैं।

आर्किटेक्चरल ब्लूप्रिंट: कक्षा IX पाठ्यक्रम का संशोधन

ICSE Class 10 Java : Class IX Foundations Architecture & Execution Pipeline 1. OOP Principles • Encapsulation: Binding data + methods (Data Hiding) • Abstraction: Essential features without details • Inheritance: Reusability via 'extends' keyword • Polymorphism: Many forms (Method Overloading) 2. Java Execution Pipeline Source Code (.java): Human-readable high-level syntax ↓ JAVAC Compiler Bytecode (.class): Platform-independent 8-bit code ↓ JVM (Interpreter + JIT) Machine Code (Native): Hardware CPU instructions 3. Operators & Evaluation • Increment / Decrement: ++x (prefix) vs x++ (postfix) • Ternary Operator: (condition) ? expr1 : expr2 • Type Casting: Implicit (widening) vs Explicit (narrow) • Short-circuit Logical: && and || short-circuit evaluation 4. Control Flow & Loops • Selection: if-else, switch-case (fall-through) • Iteration (Loops): Entry (for, while) vs Exit (do-while) • Jump Statements: break (exit loop), continue (next step) • Math Functions: pow, sqrt, abs, round, ceil, floor ICSE Section A High-Yield Output Tracing & Evaluation Focus Areas • Prefix vs Postfix Tracing: Difference between int a = ++x + x++; evaluation mechanics and variable mutation state. • Switch-Case Fallthrough: Absence of break; causes sequential execution of all subsequent cases until break or block end. • Integer Division & Modulo: 7 / 2 = 3 (truncates fraction), 7 % 2 = 1 (remainder), -7 % 2 = -1 (sign follows dividend).

अध्याय का सार संक्षेप एवं 10 मुख्य निष्कर्ष

मुख्य बिंदु 1
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (ओओपी) चार मूलभूत स्तंभों पर आधारित है: एनकैप्सुलेशन (डेटा छिपाना), एब्स्ट्रैक्शन (आवश्यक विशेषताएं), इनहेरिटेंस (पुन: प्रयोज्य), और बहुरूपता (कई रूप)।
मुख्य बिंदु 2
जावा दो-चरणीय संकलन मॉडल के माध्यम से प्लेटफ़ॉर्म स्वतंत्रता ('एक बार लिखें, कहीं भी चलाएं' - WORA) प्राप्त करता है: स्रोत कोड (.java) बाइटकोड (.class) में संकलित होता है, जिसे निष्पादित किया जाता है। प्लेटफ़ॉर्म-विशिष्ट JVM.
मुख्य बिंदु 3
Java आदिम डेटा प्रकारों को चार समूहों में विभाजित किया गया है: पूर्णांक (बाइट: 8-बिट, लघु: 16-बिट, पूर्णांक: 32-बिट, लंबा: 64-बिट), फ़्लोटिंग-पॉइंट (फ़्लोट: 32-बिट, डबल: 64-बिट), कैरेक्टर (चार: 16-बिट यूनिकोड), और लॉजिकल (बूलियन: सही/गलत)।
मुख्य बिंदु 4
प्रकार रूपांतरण दो दिशाओं में संचालित होता है: अंतर्निहित/विस्तृतीकरण (डेटा हानि के बिना संकीर्ण से व्यापक प्रकार में स्वचालित रूपांतरण) और स्पष्ट/संकीर्ण (मैन्युअल कास्ट जैसे `(int)3.7` काट-छाँट के साथ)।
मुख्य बिंदु 5
ऑपरेटर प्राथमिकता में, यूनरी ऑपरेटर्स (`++`, `--`, `+`, `-`, `!`) पहले दाएं-से-बाएं साहचर्य के साथ निष्पादित करें, उसके बाद अंकगणित (`*`, `/`, `%` से पहले `+`, `-`), संबंधपरक, तार्किक और असाइनमेंट ऑपरेटरों के साथ निष्पादित करें।
मुख्य बिंदु 6
उपसर्ग वृद्धि (`++x`) पहले परिवर्तनीय मान को बढ़ाता है और अद्यतन मान लौटाता है; पोस्टफ़िक्स इंक्रीमेंट (`x++`) पहले वर्तमान वैरिएबल मान लौटाता है और बाद में वेतन वृद्धि करता है।
मुख्य बिंदु 7
तार्किक और (`&&`) और तार्किक या (`||`) शॉर्ट-सर्किट मूल्यांकन का उपयोग करते हैं: `A && B` में, यदि `A` गलत है, तो `B` का मूल्यांकन नहीं किया जाता है; `A || B` में, यदि `A` सत्य है, तो `B` का मूल्यांकन नहीं किया जाता है।
मुख्य बिंदु 8
लूप को प्रवेश-नियंत्रित लूप (`for`, `while`) में वर्गीकृत किया जाता है, जहां बॉडी को निष्पादित करने से पहले परीक्षण की स्थिति का मूल्यांकन किया जाता है (शून्य पुनरावृत्ति संभव है), और निकास-नियंत्रित लूप (`do-while`), जो हमेशा कम से कम निष्पादित होते हैं एक बार.
मुख्य बिंदु 9
`switch-case` कथन के लिए अभिन्न या संगत प्रकार (बाइट, शॉर्ट, चार, इंट, स्ट्रिंग, एनम) की आवश्यकता होती है; `break` कथन को छोड़ने से 'फ़ॉल-थ्रू' होता है जहां बाद के मामले स्थिति की परवाह किए बिना निष्पादित होते हैं।
मुख्य बिंदु 10
कोर `Math` विधियां मानक प्रकार लौटाती हैं: `Math.sqrt()` और `Math.pow()` हमेशा `double` लौटाते हैं; `Math.round(double)` रिटर्न `long`; `Math.ceil()` और `Math.floor()` गणितीय सीमा `double` मान लौटाते हैं।

स्व-मूल्यांकन अभ्यास (Check Your Understanding)

मूल वैचारिक स्पष्टता की जांच के लिए नैदानिक प्रश्न। पहले स्वयं हल करें, फिर उत्तर देखें।

1
बताएं कि जावा प्लेटफ़ॉर्म स्वतंत्रता कैसे प्राप्त करता है। जावा बाइटकोड और मशीन कोड के बीच अंतर बताएं।
उत्तर एवं व्याख्या देखें
उत्तर: जावा दो-चरण निष्पादन आर्किटेक्चर के माध्यम से प्लेटफ़ॉर्म स्वतंत्रता प्राप्त करता है। जब जावा स्रोत कोड (.java) संकलित किया जाता है, तो कंपाइलर (javac) मूल मशीन कोड के बजाय एक मध्यवर्ती, प्लेटफ़ॉर्म-तटस्थ बाइनरी प्रतिनिधित्व उत्पन्न करता है जिसे बाइटकोड (.class) कहा जाता है। बाइटकोड में मानकीकृत 8-बिट निर्देश ऑपकोड होते हैं जो अंतर्निहित कंप्यूटर आर्किटेक्चर से स्वतंत्र होते हैं। एप्लिकेशन चलाते समय, एक प्लेटफ़ॉर्म-विशिष्ट जावा वर्चुअल मशीन (JVM) एक दुभाषिया और जस्ट-इन-टाइम (JIT) कंपाइलर का उपयोग करके स्थानीय सीपीयू पर इस बाइटकोड की व्याख्या और निष्पादन करता है। इसके विपरीत, मशीन कोड में एक विशिष्ट भौतिक सीपीयू आर्किटेक्चर (x86, ARM) द्वारा सीधे निष्पादित कच्चे बाइनरी निर्देश होते हैं और पुनर्संकलन के बिना विभिन्न ऑपरेटिंग सिस्टम पर नहीं चल सकते हैं।
2
स्पष्ट प्रकार कास्टिंग और अंतर्निहित प्रकार रूपांतरण के बीच क्या अंतर है? स्पष्ट कास्टिंग के दौरान डेटा हानि का एक उदाहरण प्रदान करें।
उत्तर एवं व्याख्या देखें
उत्तर: अंतर्निहित प्रकार का रूपांतरण (स्वचालित चौड़ीकरण) स्वचालित रूप से तब होता है जब एक छोटे आदिम डेटा प्रकार का मान किसी बड़े डेटा प्रकार को सौंपा जाता है या उसके विरुद्ध मूल्यांकन किया जाता है (जैसे, int से दोगुना)। डेटा हानि का कोई जोखिम नहीं है. स्पष्ट प्रकार की कास्टिंग (संकुचन) तब होती है जब एक प्रोग्रामर मैन्युअल रूप से कास्ट ऑपरेटर '(target_type) एक्सप्रेशन' का उपयोग करके एक व्यापक डेटा प्रकार को एक संकीर्ण डेटा प्रकार में परिवर्तित करता है। इसमें आंशिक ट्रंकेशन या पूर्णांक अतिप्रवाह के कारण डेटा हानि का जोखिम होता है। उदाहरण के लिए, 'डबल डी = 15.85 में; int x = (int)d;', स्पष्ट कास्टिंग आंशिक भाग .85 को छोटा कर देती है, जिसके परिणामस्वरूप x = 15 होता है। इसी तरह, कास्टिंग 'int n = 130;' 'बाइट बी = (बाइट)एन;' में 8-बिट ओवरफ़्लो का कारण बनता है, जिससे b = -126.
3
एक उदाहरणात्मक ट्रेस तालिका के साथ उपसर्ग वृद्धि (++x) और पोस्टफ़िक्स वृद्धि (x++) के बीच अंतर होता है।
उत्तर एवं व्याख्या देखें
उत्तर: उपसर्ग वृद्धि (++x) 'उपयोग से पहले परिवर्तन' नियम का उपयोग करता है: चर को पहले 1 से बढ़ाया जाता है, और फिर नया अद्यतन मान लौटाया जाता है और आसपास की अभिव्यक्ति में उपयोग किया जाता है। पोस्टफ़िक्स इंक्रीमेंट (x++) 'परिवर्तन से पहले उपयोग' नियम का उपयोग करता है: वेरिएबल का वर्तमान मान पहले अभिव्यक्ति में उपयोग किया जाता है, और अभिव्यक्ति मूल्यांकन के बाद ही वेरिएबल को मेमोरी में उत्परिवर्तित किया जाता है। उदाहरण के लिए: 'int x = 5; int y = ++x;' परिणाम x = 6, y = 6 है। इसके विपरीत, 'int x = 5; int y = x++;' परिणाम y = 5 है, जिसके बाद x 6 हो जाता है।
4
जावा स्विच-केस स्टेटमेंट में 'फॉल-थ्रू' की अवधारणा को समझाएं। इसे कैसे रोका जाता है?
उत्तर एवं व्याख्या देखें
उत्तर: 'फॉल-थ्रू' स्विच-केस निर्माण में तब होता है जब मिलान किया गया 'केस' स्टेटमेंट 'ब्रेक' के साथ समाप्त नहीं होता है; कथन। नतीजतन, निष्पादन बाद के सभी केस स्टेटमेंट और डिफ़ॉल्ट ब्लॉक में बिना शर्त कैस्केड होता है, उनके कोड को निष्पादित करता है, भले ही उनके केस लेबल स्विच अभिव्यक्ति से मेल खाते हों, 'ब्रेक' तक; या स्विच के समापन ब्रेस का सामना करना पड़ता है। प्रत्येक केस ब्लॉक को 'ब्रेक' के साथ समाप्त करके फ़ॉल-थ्रू को रोका जाता है; स्टेटमेंट, जो तुरंत स्विच निर्माण से बाहर निकल जाता है।
5
संरचना और न्यूनतम निष्पादन गणना के संदर्भ में प्रवेश-नियंत्रित लूप (के लिए, जबकि) की निकास-नियंत्रित लूप (डू-व्हाइल) के साथ तुलना करें।
उत्तर एवं व्याख्या देखें
उत्तर: प्रवेश-नियंत्रित लूप ('के लिए' और 'जबकि') लूप बॉडी को निष्पादित करने से पहले शुरुआत (प्रवेश) में अपनी बूलियन परीक्षण स्थिति का मूल्यांकन करते हैं। यदि शर्त शुरू में गलत है, तो लूप बॉडी कभी भी निष्पादित नहीं होती है (न्यूनतम निष्पादन गणना = 0)। एक निकास-नियंत्रित लूप ('डू-व्हाइल') पहले लूप बॉडी को निष्पादित करता है और अंत (निकास) पर बूलियन स्थिति का परीक्षण करता है। इसलिए, डू-व्हाइल लूप हमेशा अपने लूप बॉडी को कम से कम एक बार (न्यूनतम निष्पादन गणना = 1) निष्पादित करता है, भले ही परीक्षण की स्थिति शुरू में गलत हो।
6
Math.ceil(-3.7), Math.floor(-3.7), और Math.round(-3.7).
उत्तर एवं व्याख्या देखें
उत्तर: 1 के संचालन और रिटर्न मानों को समझाएं। Math.ceil(-3.7) -3.7 से बड़ा या उसके बराबर का सबसे छोटा गणितीय पूर्णांक दोहरे के रूप में लौटाता है। चूँकि -3.0, -3.7 से बड़ा है, रिटर्न मान -3.0 है। 2. Math.floor(-3.7) -3.7 से कम या उसके बराबर के सबसे बड़े गणितीय पूर्णांक को दोहरे के रूप में लौटाता है। चूँकि -4.0 -3.7 से कम है, रिटर्न मान -4.0 है। 3. गणित.राउंड(-3.7) फ्लोर(-3.7 + 0.5) = फ्लोर(-3.2) = -4 की गणना करके निकटतम पूर्णांक तक राउंड करता है, और -4 का लंबा मान लौटाता है।
7
तार्किक ऑपरेटरों (&& और ||) में शॉर्ट-सर्किट मूल्यांकन क्या है? यह कम्प्यूटेशनल रूप से लाभप्रद क्यों है?
उत्तर एवं व्याख्या देखें
उत्तर: शॉर्ट-सर्किट मूल्यांकन एक अनुकूलन है जहां तार्किक ऑपरेशन के दूसरे ऑपरेंड का मूल्यांकन नहीं किया जाता है यदि समग्र बूलियन परिणाम अकेले पहले ऑपरेंड से निर्धारित किया जा सकता है। लॉजिकल AND (A && B) में, यदि A असत्य का मूल्यांकन करता है, तो संपूर्ण अभिव्यक्ति असत्य होनी चाहिए, इसलिए B को छोड़ दिया जाता है। तार्किक या (ए || बी) में, यदि ए सत्य का मूल्यांकन करता है, तो संपूर्ण अभिव्यक्ति सत्य होनी चाहिए, इसलिए बी को छोड़ दिया जाता है। यह फायदेमंद है क्योंकि यह अनावश्यक सीपीयू चक्रों से बचाता है और रनटाइम अपवादों को रोकता है (उदाहरण के लिए, 'if (obj != null && obj.length() > 0)' में, यदि obj शून्य है, तो दूसरी अभिव्यक्ति को छोड़ दिया जाता है, NullPointerException को रोकता है)।
8
जावा में आदिम डेटा प्रकारों और समग्र/संदर्भ डेटा प्रकारों के बीच अंतर बताएं।
उत्तर एवं व्याख्या देखें
उत्तर: आदिम डेटा प्रकार (बाइट, शॉर्ट, इंट, लॉन्ग, फ्लोट, डबल, चार, बूलियन) पूर्वनिर्धारित, अंतर्निहित प्रकार हैं जिनके चर सीधे स्टैक मेमोरी में वास्तविक बाइनरी मान संग्रहीत करते हैं; उनके पास निश्चित बिट आकार हैं और उनसे संबंधित विधियां नहीं हैं। समग्र या संदर्भ डेटा प्रकार (क्लासेस, एरेज़, इंटरफेस, स्ट्रिंग्स) उपयोगकर्ता-परिभाषित या लाइब्रेरी प्रकार हैं जहां चर हीप पर गतिशील रूप से आवंटित ऑब्जेक्ट की ओर इशारा करते हुए एक मेमोरी संदर्भ (पता) संग्रहीत करता है; उनके आकार उदाहरण डेटा पर निर्भर करते हैं, और वे विधियों को लागू कर सकते हैं।
अध्याय का अध्ययन पूर्ण हुआ?
अभ्यास के लिए तैयार?

ऑनलाइन CBT टेस्ट देकर तैयारी का मूल्यांकन करें

झारखण्ड बोर्ड परीक्षा पैटर्न पर आधारित बहुविकल्पीय प्रश्नों का ऑनलाइन टेस्ट दें। तुरंत परिणाम, समय विश्लेषण और प्रत्येक प्रश्न का विस्तृत हल प्राप्त करें।