Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

x와 그 자릿수의 합이 C++에서 주어진 n과 같도록 숫자 x를 찾으십시오.

<시간/>

여기서 우리는 하나의 문제를 보게 될 것입니다. 여기서 우리는 숫자 n을 취하고, x + x의 자릿수 합이 주어진 숫자 n과 같도록 하는 다른 값 x를 찾아야 합니다. n의 값이 21이라고 가정합니다. 이 프로그램은 15 + 15의 자릿수 합, 즉 15 + 1 + 5 =21 =n으로 숫자 x =15를 반환합니다.

이 문제를 해결하려면 간단한 접근 방식을 따라야 합니다. 우리는 1에서 n까지 반복할 것입니다. 각 반복에서 숫자의 합과 숫자의 합이 숫자와 같은지 확인한 다음 중지하고 그렇지 않으면 계속합니다.

#include<iostream>
using namespace std;
int getDigitSum(int n) {
   int sum = 0;
   while (n) {
      sum += n % 10;
      n /= 10;
   }
   return sum;
}
int getNumber(int n) {
   for (int i = 0; i <= n; i++)
      if (i + getDigitSum(i) == n)
         return i;
         return -1;
}
int main() {
   int n = 21;
   cout << "The value of x is: " << getNumber(n);
}

출력

The value of x is: 15