c++ 에러 지점좀 찾아주세요..
찬늘
#include iostream
using namespace std;
int sumdigits(long n);
int jegop(int a,int b);
int main()
{
long i;
cini;
coutthe sum of digits for i is sumdigits(i)endl;
return 0;
}
int jegop(int a,int b)
{
int c=1,i;
for(i=0;ib+1;i++)
{
c*=a;
}
return c/a;
}
int sumdigits(long n)
{
int sum,k,m[1000];
while(k0)
{
if(n/jegop(10,k+1)==0) break;
}
for(int i=0;ik;i++)
{
m[k-i]=(n/jegop(10,k-i))%jegop(10,i); // 각자리의 숫자를 구하는 식
sum+=m[i];
}
return sum;
}
아예 프로그램 자체가오류가 납니다.
실행이 안되요..
i라는 임의의 상수를 입력하면 예)9879+8+7=24라는 출력이 값이 나와야 되거든요.
그래서 저는 제곱이라는 함수하고 각숫자를 합하는 sumdigits라는 함수 2개를 만들어서 실행하는데 당췌 아예 실행이 안됩니다. 고수님들이 지적좀 해주세요..아무래도 m[k-i]=(n/jegop(10,k-i))%jegop(10,i);에서 에러가 나는거 같은데 당췌모르겠네요..
-
날놓아줘
초기화를 안해줘서 그렇네요..아 감사합니다.
-
달
sumDigits함수 내에서 k값을 초기화해주지 않아서 그런거같아요