>백엔드 개발 >C++ >C++에서 재구성 가능한 숫자

C++에서 재구성 가능한 숫자

WBOY
WBOY앞으로
2023-08-31 18:49:151552검색

C++에서 재구성 가능한 숫자

정수형 값이 주어지며 숫자라고 가정합니다. 작업은 주어진 번호가 재구성 가능한지 확인하는 것입니다. 그렇다면 해당 번호는 재구성 가능한 번호로 인쇄되며, 그렇지 않으면 인쇄가 불가능합니다.

재구성 가능한 번호란 무엇인가요?

숫자는 사용 가능한 요소의 총 개수로 나누어질 때 재구성 가능합니다. 예를 들어 숫자 9는 3개의 인수(1, 3, 9)를 가지므로 재구성이 가능한 숫자이고, 9는 3으로 나누어질 수 있으므로 재구성 가능한 숫자입니다.

이것의 다양한 입출력 상황을 살펴보겠습니다 -

input - int number = 9

output - 재구성 가능한 숫자입니다

설명 - 숫자를 사용할 수 있는 경우 재구성 가능합니다 요인의 총 개수를 나눌 수 있는 경우. 3가지 요소(1, 3, 9)가 있기 때문에 재구성 가능한 숫자 9가 주어졌습니다

9는 3으로 나누어지는 숫자이므로 재구성이 가능한 숫자입니다.

입력 − int 숫자 = 10

출력 − 리팩토링 가능한 숫자가 아닙니다

설명 - 숫자는 사용 가능한 전체 요소 수로 나눌 수 있는 경우 리팩토링이 가능합니다. 인수의 총 개수가 4(1, 2, 5, 10)이고 10은 4로 나누어지지 않으므로 재구성할 수 없는 숫자 10을 얻습니다.

다음 프로그램에서 사용된 방법

  • 숫자 등 정수형 변수를 입력하세요.

  • 부울 유형 함수 check_Refactorable(int 숫자)에 데이터를 전달합니다.

  • 내부적으로 check_Refactorable(int 숫자) 함수

    • 는 개수가 0인 정수 변수를 선언합니다.

    • i가 sqrt(숫자)보다 작을 때까지 i에서 1까지 FOR 반복을 시작합니다. 루프 내에서 IF 숫자 % i = 0을 확인한 다음 IF 숫자 / i = i를 확인한 다음 개수를 1씩 미리 증가시킵니다.

    • ELSE, count를 count + 2로 설정합니다.

    • 숫자 % count == 0

  • 결과를 인쇄합니다.

  • 결과를 인쇄하세요. p>

  • Example

    #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;
    }

    Output

    위 코드를 실행하면 다음과 같은 출력이 생성됩니다

    It is a Refactorable number

    위 내용은 C++에서 재구성 가능한 숫자의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제