प्रारंभ और अंत के बीच संख्याओं की एक श्रृंखला को देखते हुए। लक्ष्य उन संख्याओं की गणना करना है जिनका पहला अंक अंतिम अंक के बराबर है और जो [पहले, अंतिम] की सीमा में आते हैं।
सभी एकल अंकों की संख्या की गणना की जाएगी यदि वे सीमा में हैं।
आइए उदाहरणों से समझते हैं।
उदाहरण के लिए
इनपुट - प्रारंभ =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