Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी ++ में उदाहरणों के साथ डिसैरियम नंबर?

एक संख्या जिसके अंकों का योग उसकी संबंधित स्थिति से संचालित होता है, वह संख्या के बराबर होता है, एक डिसैरियम संख्या कहलाती है।

NoOfDigits(int num) फ़ंक्शन संख्या लेता है और संख्या को लगातार 10 से विभाजित करके अंकों की संख्या लौटाता है जबकि केवल एक ही स्थान बचा है। प्रत्येक पुनरावृत्ति पर अंक चर को अंक ट्रैक रखने के लिए बढ़ाया जाता है और लूप समाप्त होने के बाद वापस कर दिया जाता है।

int noOfDigits(int num){
   int digits = 0;
   int temp = num;
   while (temp){
      temp= temp/10;
      digits++;
   }
   return digits;
}

इसके बाद, isDisarium(int num) एक बूलियन फ़ंक्शन है जो संख्या लेता है और जांचता है कि यह डिसैरियम संख्या है या नहीं। यह संख्या mod 10 द्वारा सबसे दाहिना अंक लेता है और इसे संख्या प्रणाली में अंकों के स्थान पर शक्ति देता है। संख्या को शक्ति देकर परिणाम को योग में जोड़ा जाता है। जबकि लूप तब तक चलता है जब तक कोई अंक न बचे। यदि योग संख्या के बराबर है तो सत्य लौटाया जाता है अन्यथा यह झूठा लौटाता है।

isDisarium(int num){
   int digits = noOfDigits(num);
   int sum = 0;
   int temp = num;
   while (temp){
      int rightDigit = temp%10;
      sum = sum + pow(rightDigit, digits--);
      temp = temp/10;
   }
   return (sum == num);
}

उदाहरण

आइए जाँच के निम्नलिखित कार्यान्वयन पर एक नज़र डालते हैं कि कोई संख्या असारियम संख्या है या नहीं।

#include<iostream>
#include<math.h>
using namespace std;
int noOfDigits(int num){
   int digits = 0;
   int temp = num;
   while (temp){
      temp= temp/10;
      digits++;
   }
   return digits;
}
bool isDisarium(int num){
   int digits = noOfDigits(num);
   int sum = 0;
   int temp = num;
   while (temp){
      int rightDigit = temp%10;
      sum = sum + pow(rightDigit, digits--);
      temp = temp/10;
   }
   return (sum == num);
}
int main(){
   int num = 518;
   if( isDisarium(num))
      cout <<num<<" is a Disarium Number"<<endl;
   else
      cout << num<<" is not a Disarium Number"<<endl;
   return 0;
}

आउटपुट

उपरोक्त कोड निम्न आउटपुट उत्पन्न करेगा -

518 is a Disarium Number

  1. केवल C++ में 3 और 8 अंकों वाली संख्या में कनवर्ट करें

    इस ट्यूटोरियल में, हम किसी संख्या को केवल 3 और 8 के रूप में अंकों में बदलने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें एक यादृच्छिक संख्या प्रदान की जाएगी। हमारा काम है कि संख्या में से 1 जोड़कर या घटाकर या संख्या के अंकों को किसी वांछित अंक में परिवर्तित करके इसके अंकों को केवल 3 और 8 में

  1. C++ में अंकगणित संख्या

    अंकगणितीय संख्या एक ऐसी संख्या है जिसमें सभी धनात्मक भाजक का औसत एक पूर्णांक होता है अर्थात संख्या n के लिए यदि भाजक की संख्या भाजक के योग को विभाजित कर सकती है तो n एक अंकगणितीय संख्या है। आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं, Input : n = 6 Output : YES Explanation : Divisor

  1. C++ में CHAR_BIT

    CHAR_BIT चार में बिट्स की संख्या है। इसे C++ भाषा में “limits.h” हेडर फाइल में घोषित किया गया है। यह 8-बिट प्रति बाइट का होता है। यहाँ C++ भाषा में CHAR_BIT का एक उदाहरण दिया गया है, उदाहरण #include <bits/stdc++.h> using namespace std; int main() {    int x = 28;    int a