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

C++でのリファクタリング可能な数


整数型の値、たとえば数値が与えられます。タスクは、指定された数がリファクタリング可能かどうかを確認することです。はいの場合はその数がリファクタリング可能な数であることを印刷し、そうでない場合は印刷できません。

リファクタリング可能な数とは何ですか?

数値は、使用可能な因子の総数で割り切れる場合にリファクタリング可能です。たとえば、数値9は、因子の総数、つまり3(1、3、9)を持ち、9は3で割り切れるので、リファクタリング可能な数であるため、リファクタリング可能です。

このためのさまざまな入出力シナリオを見てみましょう-

入力 −int番号=9

出力 −これはリファクタリング可能な数です

説明 −利用可能な因子の総数で割り切れる場合、数値はリファクタリング可能です。数9が与えられます。これは、因子の総数が3(1、3、9)であり、9は3で割り切れるので、リファクタリング可能な数であるため、リファクタリング可能です。

入力 −int番号=10

出力 −これはリファクタリング可能な数ではありません

説明 −利用可能な因子の総数で割り切れる場合、数値はリファクタリング可能です。数値10が与えられます。これは、因子の総数が4(1、2、5、10)であり、10は4で割り切れないため、リファクタリングできない数であるため、リファクタリングできません。

以下のプログラムで使用されているアプローチは次のとおりです

  • 整数型の変数、たとえば数値を入力します。

  • データをbool型の関数check_Refactorable(int number)に渡します。

  • 関数check_Refactorable(int number)

    の内部
    • 整数型変数をカウントとして0として宣言します。

    • iがsqrt(number)未満になるまで、ループFORをiから1に開始します。ループ内で、IF番号%i =0を確認し、次にIF番号/ i =iを確認してから、カウントを1ずつ事前にインクリメントします。

    • それ以外の場合は、カウントをカウント+2として設定します。

    • 戻り数%カウント==0

  • 結果を印刷します。

#include <bits/stdc++.h>
using namespace std;
bool check_Refactorable(int number){
   int count = 0;
   for (int i = 1; i <= sqrt(number); ++i){
      if(number % i==0){
         if(number / i == i){
            ++count;
         }
         else{
            count += 2;
         }
      }
   }
   return number % count == 0;
}
int main(){
   int number = 9;
   if(check_Refactorable(number) == 1){
      cout<<"It is a Refactorable number";
   }
   else{
      cout<<"It isn't a Refactorable number";
   }
   return 0;
}

出力

上記のコードを実行すると、次の出力が生成されます

It is a Refactorable number

  1. C++での質素な数

    この問題では、正の整数Nが与えられます。私たちのタスクは、与えられた数が質素な数であるかどうかをチェックするプログラムを作成することです。 不正な番号 −指定された数の素因数分解の桁数よりも厳密に桁数が多い数。 例 − 625、数625の素因数は5 4です。 。 625の桁数は3です。 5 4の桁数 は2です。 3は厳密に2より大きくなります。したがって、625は質素な数です。 最初のいくつかの質素な数は − 125、128、243、256、343、512、625など。 問題を理解するために例を見てみましょう Input: n = 128 Output: Frugal n

  2. C++五胞体数

    五胞体数は、パスカルの三角形の5番目の数として表されます。ご存知のように、これは5番目の数字です。つまり、パスカルの三角形に少なくとも5つの数字が必要です。したがって、このシリーズの最初の数字は 1 4 6 4 1から始まります。 パスカルの三角形の4行目。したがって、このチュートリアルでは、たとえば、n番目の五胞体数を見つける必要があります Input : 1 Output : 1 Input : 4 Output : 35 次の図から出力を確認できます- この問題については、可能な限り、これは一種のシリーズであるため、ソリューションでこのシリーズのパターンを見つけようと