문제 4 - 프로젝트 오일러를 풀려고 노력 중입니다. 그래서 내 코드에 약간의 도움이 필요하다. 여기에 내가 풀려고하는 문제가있다 :Palindrom checker, wrong output
회문수는 같은 두 가지 방법으로 읽는다. 두 자리 숫자 두 개로 이루어진 가장 큰 회상색은 9009 = 91 × 99입니다.
세 자리 숫자 두 자리의 곱으로 만들어진 가장 큰 palindrome을 찾습니다.
코드 :
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int is_palindrom(int number, int revrse) {
char str1[6];
char str2[6];
sprintf(str1, "%d", number);
sprintf(str2, "%d", revrse);
return strcmp(str1, str2);
}
int main(void) {
int number, revrse;
int i, j, temp;
int maks;
for(i=999;i>99;i--)
for(j=999;j>99;j--) {
temp = number = i*j;
while (temp != 0) {
revrse = revrse * 10;
revrse = revrse + temp%10;
temp = temp/10;
}
if(is_palindrom(number, revrse)==0 && number > maks)
maks = number;
}
printf("%d",maks);
return 0;
}
특정 문제를 명확히하거나 추가 정보를 추가하여 필요한 것을 정확하게 강조하십시오. 현재 작성된 내용이므로 귀하가 원하는 내용을 정확하게 말하기는 어렵습니다. 이 질문을 명확히하기위한 [How to Ask] (http://stackoverflow.com/help/how-to-ask) 페이지를 참조하십시오. – usr2564301
'char str1 [7]; char str2 [7];'...'int maks = 0;'...'revrse = 0; while (temp! = 0) 나는 왜 그것이 제대로 작동하지 않는지 혼란스러워서, 나는 intial을 간과했다. 그 2 ints. – BLUEPIXY