प्रारंभ और अंत के बीच संख्याओं की एक श्रृंखला को देखते हुए। लक्ष्य उन संख्याओं की गणना करना है जिनका पहला अंक अंतिम अंक के बराबर है और जो [पहले, अंतिम] की सीमा में आते हैं।
सभी एकल अंकों की संख्या की गणना की जाएगी यदि वे सीमा में हैं।
आइए उदाहरणों से समझते हैं।
उदाहरण के लिए
इनपुट - प्रारंभ =100, अंत =200
आउटपुट - श्रेणी में संख्याओं की संख्या जहां पहला अंक संख्या के अंतिम अंक के बराबर है:10
स्पष्टीकरण - नंबर होंगे:
101, 121, 131, 141, 151, 161, 171, 181 और 191.
इनपुट - प्रारंभ =1, अंत =10
आउटपुट - श्रेणी में संख्याओं की संख्या जहां पहला अंक संख्या के अंतिम अंक के बराबर है:9
स्पष्टीकरण - सभी 1-अंकीय संख्याओं की गणना की जाएगी। 1, 2, 3, 4, 5, 6, 7, 8, 9
नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है
सभी एकल अंकों की संख्याएं यदि वे सीमा [प्रारंभ, अंत] में हैं, तो उन्हें गिना जाएगा। अब प्रत्येक संख्या के लिए पहले और अंतिम अंक की जाँच करें। यदि पहला अंक अंतिम अंक से बड़ा है तो गिनने के लिए 8 + वैल/10 जोड़ें, यदि छोटा है तो गिनती में 9 + वैल/10 जोड़ें। यहां वैल रिकर्सिव कॉल टू रेंज (इंट वैल) में वर्तमान नंबर है।
- पूर्णांकों को श्रेणी चर के रूप में प्रारंभ और अंत लें।
- सेट काउंट =रेंज (एंड) - रेंज (स्टार्ट)।
- फ़ंक्शन रेंज (इंट वैल) पूर्णांक संख्या लेता है और उस श्रेणी में संख्याओं की संख्या देता है जहां पहला अंक संख्या के अंतिम अंक के बराबर होता है।
- प्रारंभिक गणना 0 के रूप में लें।
- अंत को अंतिम अंक के रूप में लें जो कि वैल%10 है।
- रिटर्न वैल अगर यह सिंगल डिजिट नंबर (10 से कम) है।
- अब लूप का उपयोग करते हुए start=val%10 के रूप में गणना करें। वैल को 10 से कम करें। तो शुरुआत में पहला अंक होगा।
- अब यदि प्रारंभ करें<=end तो गिनने के लिए 9 + set_val / 10 जोड़ें।
- अब अगर शुरू करें>समाप्त करें तो गिनने के लिए 8 + set_val / 10 जोड़ें।
- अंत में परिणाम के रूप में वापसी की गणना करें।
उदाहरण
#include <iostream> using namespace std; int range(int val) { int count = 0; int start; int end = val % 10; int set_val = val; if (val < 10) { return val; } end = val % 10; while (val) { start = val % 10; val = val / 10; } if (start <= end) { count = 9 + set_val / 10; } else { count = 8 + set_val / 10; } return count; } int main() { int start = 10, end = 50; int count = range(end) - range(start); cout << "Count of Numbers in Range where first digit is equal to last digit of the number are: " << count; return 0; }
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा
आउटपुट
Count of Numbers in Range where first digit is equal to last digit of the number are: 4