이 글은 과제 제출 기한이 지났고 사이트 내에서 코드도 열람이 가능해졌기 때문에

풀이를 정리해도 될 것 같아 비공개 글에서 공개글로 전환하였습니다. 

 

<안내>
필자도 배우는 입장이라 틀린점, 잘못된 점이 있을 수 있습니다.
그러니 지적, 피드백 환영합니다.

자리수 거듭제곱수

내가 틀렸던 점 : 자릿수인 k와 자릿수의 거듭제곱수의 합인 sum을 0으로 초기화시키지 않아서 틀림.

#include <iostream>
#include <cmath>
using namespace std;

int main(int argc, char const *argv[]) {
    int i, j, k, n, x, sum, num, tmp;    
    cin >> x;
    for (i=0; i<x; i++){
        cin >> num;
        tmp = num;
        n = num;
        k = 0;
        sum = 0;
        while (tmp >0){
            tmp = (tmp/10);
            k += 1;
        }
        for (j=0; j<k;j++) {
            sum += pow(n%10,k);
            n = n /10;
        }
        if (num == sum){
            cout << 1 << endl;
        }
        else{
            cout << 0 << endl;
        }
    }   
    return 0;
}

'TIL > [C++ 프로그래밍} TIL' 카테고리의 다른 글

TIL (22.04.11)  (0) 2022.04.11
TIL 달팽이와 방향배열 (22.04.08)  (0) 2022.04.08
TIL (22.04.06)  (0) 2022.04.06
TIL (22.04.04)  (0) 2022.04.04
TIL (22.03.30)  (0) 2022.03.30