होल्स[10] की एक सरणी दी गई है जिसमें संख्याओं 0 से 9 में छेदों की संख्या है। लक्ष्य इनपुट के रूप में दी गई एक पूर्णांक संख्या में छेदों की संख्या ढूंढना है। दिया गया - holes[] = { 2, 1, 1, 0, 0, 1, 1, 1, 0 }
उदाहरण के लिए
इनपुट
number = 239143
आउटपुट
Count the number of holes in an integer are: 3
व्याख्या
हम holes[] में दिए गए छेदों को गिनेंगे 239143 ( 1+0+0+2+0+0 )
इनपुट
number = 12345
आउटपुट
Count the number of holes in an integer are: 3
व्याख्या
हम holes[] में दिए गए छेदों को गिनेंगे 12345 ( 1+1+0+0+1)
नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण इस प्रकार है:
बस num%10 का उपयोग करके प्रत्येक बाएं सबसे अंक लें और holes[num%10] से छेद गिनती को गिनती में जोड़ें। फिर संख्या num को 10 से कम करें।
एक पूर्णांक इनपुट के रूप में लें।
holes[] सरणी इनिशियलाइज़ करें।
फ़ंक्शन holes_integer(int number, int holes[]) पूर्णांक में छेदों की संख्या की गिनती लौटाता है।
प्रारंभिक गिनती को 0 के रूप में लें।
जब तक number > 0 ट्रैवर्स करें।
बाएं सबसे अंक को temp = number % 10 के रूप में लें। holes[temp] को गिनती में जोड़ें।
संख्या को 10 से कम करें।
अंत में परिणाम के रूप में गिनती लौटाएं।
उदाहरण
#include <bits/stdc++.h> using namespace std; int holes_integer(int number, int holes[]){ int count = 0; while (number > 0){ int temp = number % 10; count = count + holes[temp]; number = number/10; } return count; } int main(){ int number = 239143; int holes[] = { 2, 1, 1, 0, 0, 1, 1, 1, 0}; cout<<"Count the number of holes in an integer are: "<<holes_integer(number, holes); return 0; } आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा:
Count the number of holes in an integer are: 2