हमें एक सकारात्मक संख्या दी गई है मान लीजिए संख्या और कार्य एक-एक करके प्रदर्शित एलईडी रोशनी में परिवर्तनों की गणना की गणना करना है। हम मान लेंगे कि शुरू में सभी एल ई डी बंद हैं और उन्हें स्ट्रिंग मान के आधार पर शुरू किया जाएगा।
इस प्रश्न को हल करने के लिए हमें यह समझने की जरूरत है कि सात खंड वाला डिस्प्ले क्या है और यह कैसे काम करता है।
सात सेगमेंट डिस्प्ले क्या हैं
सात खंड डिस्प्ले आउटपुट डिस्प्ले डिवाइस हैं जो छवि या टेक्स्ट या दशमलव संख्याओं के रूप में जानकारी प्रदर्शित करने का एक तरीका प्रदान करते हैं जो अधिक जटिल डॉट मैट्रिक्स डिस्प्ले का विकल्प है। यह डिजिटल घड़ियों, बुनियादी कैलकुलेटर, इलेक्ट्रॉनिक मीटर और अन्य इलेक्ट्रॉनिक उपकरणों में व्यापक रूप से उपयोग किया जाता है जो संख्यात्मक जानकारी प्रदर्शित करते हैं। इसमें प्रकाश उत्सर्जक डायोड (एल ई डी) के सात खंड होते हैं जो संख्यात्मक 8 की तरह इकट्ठे होते हैं।
सात सेगमेंट डिस्प्ले का कार्य करना
संख्या 8 प्रदर्शित होती है जब बिजली सभी खंडों को दी जाती है और यदि आप 'जी' के लिए बिजली काट देते हैं, तो यह संख्या 0 प्रदर्शित करता है। सात खंडों के प्रदर्शन में, विभिन्न पिनों पर बिजली (या वोल्टेज) को लागू किया जा सकता है उसी समय, इसलिए हम 0 से 9 तक संख्यात्मक प्रदर्शन के संयोजन बना सकते हैं। चूंकि सात खंड डिस्प्ले एक्स और जेड की तरह वर्णमाला नहीं बना सकते हैं, इसलिए इसका उपयोग वर्णमाला के लिए नहीं किया जा सकता है और इसका उपयोग केवल दशमलव संख्यात्मक परिमाण प्रदर्शित करने के लिए किया जा सकता है। हालांकि, सात खंड डिस्प्ले अक्षर ए, बी, सी, डी, ई, और एफ बना सकते हैं, इसलिए इसका उपयोग हेक्साडेसिमल अंकों का प्रतिनिधित्व करने के लिए भी किया जा सकता है।
उदाहरण के लिए
Input − num = “123 ” Output − count is 5
स्पष्टीकरण - 1 को जलाने के लिए आवश्यक कुल एलईडी 2 है, 2 को जलाने के लिए आवश्यक कुल एलईडी 5 है और 3 को जलाने के लिए आवश्यक कुल एलईडी 5 है। इसलिए प्रदर्शित करने में आवश्यक परिवर्तनों की कुल संख्या है - 5
Input − num = “576 ” Output − count is 10
स्पष्टीकरण - 5 को जलाने के लिए आवश्यक कुल एलईडी 5 है, 7 को जलाने के लिए आवश्यक कुल एलईडी 3 है और रोशनी के लिए आवश्यक कुल एलईडी 6 है। तो प्रदर्शित करने में आवश्यक परिवर्तनों की कुल संख्या है:10
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
-
संख्याओं को हल्का करने के लिए परिभाषित करने वाले पूर्णांक मानों की स्ट्रिंग इनपुट करें
-
दिए गए स्ट्रिंग की लंबाई की गणना लंबाई () फ़ंक्शन का उपयोग करके करें जो एक स्ट्रिंग में अंकों के अनुसार एक पूर्णांक मान लौटाएगा।
-
एक सरणी बनाएं जो सभी एलईडी मानों को संग्रहीत करेगी।
-
एक अस्थायी चर लें मान लें कि अस्थायी है जो मान को संग्रहीत करेगा।
-
i से 1 और i लंबाई से कम के लिए लूप प्रारंभ करें
-
लूप के अंदर, अस्थायी के साथ अस्थायी सेट करें + abs([LED[str[i] - '0'] - LED[n[i-1] - '0']);
-
गिनती लौटाएं
-
परिणाम प्रिंट करें।
उदाहरण
#include<iostream> using namespace std; int countled(string str){ // number of LED required to display a digit int Led[] = { 6, 2, 5, 5, 4, 5, 6, 3, 7, 5 }; int len = str.length(); // calculating the change int res = Led[str[0] - '0']; for (int i = 1; i < len; i++){ res = res + abs(Led[str[i] - '0'] - Led[str[i - 1] - '0']); } return res; } int main(){ string str = "123"; cout <<"count is "<<countled(str); return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो हमें निम्न आउटपुट मिलेगा -
count is 5