首頁  >  文章  >  後端開發  >  在C++中的可重構數

在C++中的可重構數

WBOY
WBOY轉載
2023-08-31 18:49:151437瀏覽

在C++中的可重構數

給定一個整數類型的值,假設為number。任務是檢查給定的數字是否可重構。如果是,列印該數字是可重構數字,否則列印不可能。

什麼是可重構數字?

當一個數字可以被其可用因子的總數整除時,它就是可重構的。例如,數字9是可重構的,因為它有3個因子(1、3、9),而9可以被3整除,因此它是一個可重構數字。

讓我們來看看這個的各種輸入輸出狀況-

輸入 - int number = 9

輸出 -這是一個可重構數字

解釋 - 當一個數字可以被其可用因子的總數整除時,它就是可重構的。我們給定了一個數字9,它是可重構的,因為它有3個因子(1、3、9)

9 可以被 3 整除,因此它是一個可重構的數字。

輸入− int number = 10

#輸出− 它不是t a Refactorable number

##說明# - 當一個數字可以被可用因子總數整除時,它就是可重構的。我們得到一個數字10,它是不可重構的,因為它的因子總數為4(1, 2, 5, 10),並且10 不能被4 整除,因此它不是一個可重構的數字

下面程式中使用的方法如下

  • 輸入一個整數類型的變量,比如說數字。

  • 將資料傳遞給bool類型的函數check_Refactorable(int number)。

  • 函數check_Refactorable(int number)內部

    • 聲明一個整數變量,計數為0。

    • 開始循環FOR,從i到1,直到i小於sqrt(數字)。在循環內,檢查 IF number % i = 0,然後檢查 IF number / i = i,然後將計數預先增加 1。

    • ELSE,計數設定為count 2 .

    • #傳回數字% count == 0

  • 列印結果。

  • 列印結果。 p>

  • 範例

    #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&#39;t a Refactorable number";
       }
       return 0;
    }

    輸出

    如果我們執行上面的程式碼,它將產生以下輸出

    It is a Refactorable number

    #

    以上是在C++中的可重構數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

    陳述:
    本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除