본문 바로가기

코딩 테스트/프로그래머스

[Level 1, C, C++] 하샤드 수

728x90
반응형

 

C랑 C++ 같이 풀어보았다.


#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

bool solution(int x) {
    bool answer = true;

    int x_sum = 0;
    char x_char[10000];

    sprintf(x_char, "%d", x);

    for (int i = 0; i < strlen(x_char); i++)
    {
        x_sum += (int)x_char[i] - 48;
    }

    if (x % x_sum == 0)
        answer = true;
    else
        answer = false;

    return answer;
}
#include <string>
using namespace std;

bool solution(int x) {
    int sum = 0;
    string s_number = to_string(x);
    for(auto & s_n : s_number) {
        sum += (int)s_n - 48;
    }
    if(x % sum == 0) return true;
    else return false;
}
728x90
반응형