C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で数値を除算する数値の桁数を検索します


番号が与えられていると仮定します。数を均等に分割する数の桁数を数える必要があります。数値が1012で、結果が3であるとします。1012を均等に分割する3桁の1、1、および2があります。

これを解決するために、モジュラス演算を使用して数値の各桁を見つけ、数値がその桁で割り切れるかどうかを確認します。割り切れる場合は、カウンターを増やします。数字が0の場合は、その数字を無視します。

#include<iostream>
using namespace std;
   int countDivDigit(int num) {
   int count = 0;
   int temp = num;
   while(temp){
      int div = temp%10;
      if(div != 0){
         if(num % div == 0)
            count++;
      }
      temp /= 10;
   }
   return count;
}
int main() {
   int num = 1012;
   cout << "Number of digits that divides " << num << " evenly, is: " << countDivDigit(num);
}

出力

Number of digits that divides 1012 evenly, is: 3

  1. C ++を使用して、配列内の数値の頻度を見つけます。

    配列があるとします。 n個の異なる要素があります。配列内の1つの要素の頻度を確認する必要があります。 A =[5、12、26、5、3、4、15、5、8、4]とすると、5の頻度を見つけようとすると、3になります。 これを解決するために、左から配列をスキャンします。要素が指定された数と同じである場合は、カウンターを増やします。それ以外の場合は、配列がなくなるまで次の要素に進みます。 例 #include<iostream> using namespace std; int countElementInArr(int arr[], int n, int e) {   &nbs

  2. xとその桁の合計がC++で指定されたnと等しくなるような数xを見つけます

    ここで、1つの問題が発生します。ここで、数値nを取得する場合、x +桁の合計xが指定された数値nと同じになるように、xなどの別の値を見つける必要があります。 nの値が21であると仮定します。このプログラムは、15+桁の合計15、つまり15 + 1 + 5 =21=nとして数値x=15を返します。 この問題を解決するには、単純なアプローチに従う必要があります。 1からnまで繰り返し、各繰り返しで、数値とその桁の合計の合計が数値と同じであるかどうかを確認し、停止します。それ以外の場合は続行します。 例 #include<iostream> using namespace std; i