12 KiB
निर्णय लेना: छात्र ग्रेड प्रोसेसर
सीखने के उद्देश्य
इस असाइनमेंट में, आप इस पाठ से निर्णय-लेने की अवधारणाओं का अभ्यास करेंगे एक ऐसा प्रोग्राम बनाकर जो विभिन्न ग्रेडिंग सिस्टमों से छात्र के ग्रेड को प्रोसेस करता है। आप यह निर्धारित करने के लिए if...else कथनों, तुलना ऑपरेटरों, और तार्किक ऑपरेटरों का उपयोग करेंगे कि कौन से छात्र अपने कोर्स पास कर रहे हैं।
चुनौती
आप ऐसी स्कूल में काम करते हैं जो हाल ही में एक अन्य संस्था के साथ मर्ज हो गया है। अब आपको दो पूरी तरह अलग ग्रेडिंग सिस्टमों से छात्र के ग्रेड प्रोसेस करने हैं और यह निर्धारित करना है कि कौन से छात्र पास हो रहे हैं। यह कंडीशनल लॉजिक का अभ्यास करने का उत्कृष्ट अवसर है!
ग्रेडिंग सिस्टम को समझना
पहला ग्रेडिंग सिस्टम (संख्यात्मक)
- ग्रेड 1-5 तक की संख्याओं के रूप में दिए जाते हैं
- उत्तीर्ण ग्रेड: 3 और उससे ऊपर (3, 4, या 5)
- अनुत्तीर्ण ग्रेड: 3 से नीचे (1 या 2)
दूसरा ग्रेडिंग सिस्टम (अक्षर ग्रेड)
- ग्रेड अक्षरों में होते हैं:
A,A-,B,B-,C,C- - उत्तीर्ण ग्रेड:
A,A-,B,B-,C,C-(सभी सूचीबद्ध ग्रेड उत्तीर्ण हैं) - नोट: इस सिस्टम में
DयाFजैसे फेल ग्रेड शामिल नहीं हैं
आपका कार्य
दिए गए ऐरे allStudents जिसमें सभी छात्रों और उनके ग्रेड होते हैं, एक नया ऐरे studentsWhoPass बनाएं जिसमें सभी ऐसे छात्र होंगे जो अपने संबंधित ग्रेडिंग सिस्टम अनुसार पास हैं।
let allStudents = [
'A', // पत्र ग्रेड - उत्तीर्ण
'B-', // पत्र ग्रेड - उत्तीर्ण
1, // संख्यात्मक ग्रेड - अनुत्तीर्ण
4, // संख्यात्मक ग्रेड - उत्तीर्ण
5, // संख्यात्मक ग्रेड - उत्तीर्ण
2 // संख्यात्मक ग्रेड - अनुत्तीर्ण
];
let studentsWhoPass = [];
चरण-दर-चरण तरीका
allStudentsऐरे में प्रत्येक ग्रेड के लिए एक लूप सेट करें- ग्रेड के प्रकार की जांच करें (क्या यह संख्या है या स्ट्रिंग?)
- उचित ग्रेडिंग सिस्टम के नियम लागू करें:
- संख्याओं के लिए: जांचें कि ग्रेड >= 3 है या नहीं
- स्ट्रिंग के लिए: जांचें कि यह मान्य उत्तीर्ण अक्षर ग्रेडों में से एक है या नहीं
- उत्तीर्ण ग्रेडों को
studentsWhoPassऐरे में जोड़ें
सहायक कोड तकनीकें
पाठ से ये JavaScript अवधारणाएं इस्तेमाल करें:
- typeof ऑपरेटर:
typeof grade === 'number'यह जांचने के लिए कि ग्रेड संख्यात्मक है - तुलना ऑपरेटर:
>=संख्यात्मक ग्रेड तुलना के लिए - तार्किक ऑपरेटर:
||कई अक्षर ग्रेड शर्तों के लिए जांच - if...else स्टेटमेंट्स: विभिन्न ग्रेडिंग सिस्टम को संभालने के लिए
- ऐरे विधियाँ:
.push()उत्तीर्ण ग्रेड को नए ऐरे में जोड़ने के लिए
अपेक्षित आउटपुट
जब आप अपना प्रोग्राम चलाएंगे, तो studentsWhoPass में होना चाहिए: ['A', 'B-', 4, 5]
क्यों ये ग्रेड पास हैं:
'A'और'B-'मान्य अक्षर ग्रेड हैं (इस सिस्टम के सभी अक्षर ग्रेड पास हैं)4और5संख्यात्मक ग्रेड्स हैं जो >= 3 हैं1और2फेल हैं क्योंकि वे संख्यात्मक ग्रेड हैं और < 3 हैं
अपने समाधान का परीक्षण करें
अपने कोड को विभिन्न परिदृश्यों के साथ जांचें:
// विभिन्न ग्रेड संयोजनों के साथ परीक्षण करें
let testGrades1 = ['A-', 3, 'C', 1, 'B'];
let testGrades2 = [5, 'A', 2, 'C-', 4];
// आपका समाधान किसी भी वैध ग्रेड संयोजन के साथ काम करना चाहिए
बोनस चुनौतियाँ
जब आप मूल असाइनमेंट पूरा कर लें, तो इन एक्सटेंशन्स को आजमाएं:
- वैधता जोड़ें: अमान्य ग्रेड (जैसे नकारात्मक संख्या या अमान्य अक्षर) जांचें
- सांख्यिकी गिनें: कितने छात्र पास हुए और कितने फेल हुए इसकी गणना करें
- ग्रेड रूपांतरण: सभी ग्रेड को एक ही संख्यात्मक प्रणाली में बदलें (A=5, B=4, C=3, आदि)
मूल्यांकन मानदंड
| मापदंड | उत्कृष्ट (4) | सक्षम (3) | विकासशील (2) | प्रारंभिक (1) |
|---|---|---|---|---|
| कार्यकुशलता | प्रोग्राम दोनों सिस्टम से सभी उत्तीर्ण ग्रेड सही ढंग से पहचानता है | प्रोग्राम छोटे मुद्दों या एज केस के साथ काम करता है | प्रोग्राम आंशिक रूप से काम करता है लेकिन तार्किक त्रुटियां हैं | प्रोग्राम में गंभीर त्रुटियां हैं या चलता नहीं है |
| कोड संरचना | साफ, सुव्यवस्थित कोड उचित if...else लॉजिक के साथ | उचित कंडीशनल स्टेटमेंट के साथ अच्छी संरचना | कुछ संगठनात्मक समस्याओं के साथ स्वीकार्य संरचना | खराब संरचना, लॉजिक समझना कठिन |
| अवधारणाओं का उपयोग | तुलना ऑपरेटर, तार्किक ऑपरेटर, और कंडीशनल स्टेटमेंट्स का प्रभावी उपयोग | पाठ अवधारणाओं का अच्छा उपयोग थोड़े अंतराल के साथ | पाठ अवधारणाओं का कुछ उपयोग लेकिन महत्वपूर्ण तत्व गायब | पाठ अवधारणाओं का सीमित उपयोग |
| समस्या समाधान | समस्या की स्पष्ट समझ और सरल समाधान विधि प्रदर्शित करता है | अच्छी समस्या समाधान विधि मजबूत लॉजिक के साथ | उचित समस्या समाधान के साथ कुछ भ्रम | अस्पष्ट योजना, समझ का प्रदर्शन नहीं करता |
सबमिशन दिशा-निर्देश
- दिए गए उदाहरणों के साथ अपने कोड का पूरी तरह परीक्षण करें
- अपने लॉजिक की व्याख्या करते हुए विशेषकर कंडीशनल स्टेटमेंट्स में टिप्पणियां जोड़ें
- परिणाम की जांच करें कि यह अपेक्षित परिणाम से मेल खाता है:
['A', 'B-', 4, 5] - एज केस जैसे खाली ऐरे या अप्रत्याशित डेटा प्रकार पर विचार करें
💡 प्रो टिप: सरल शुरुआत करें! सबसे पहले मूल कार्यकुशलता काम कराएं, फिर अधिक परिष्कृत फीचर्स जोड़ें। याद रखें, लक्ष्य इस पाठ में सीखे गए टूल्स से निर्णय-लेने की लॉजिक का अभ्यास करना है।
अस्वीकरण:
यह दस्तावेज़ AI अनुवाद सेवा Co-op Translator का उपयोग करके अनूदित किया गया है। जबकि हम सटीकता के लिए प्रयासरत हैं, कृपया जान लें कि स्वचालित अनुवादों में त्रुटियां या गलतियाँ हो सकती हैं। मूल दस्तावेज़ अपनी मूल भाषा में अधिकृत स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सलाह दी जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या भ्रम के लिए हम जिम्मेदार नहीं हैं।