附上錯誤訊息= = 真是苦惱啊!我想過是不是他故意先輸入數字大的,所以寫過比大小
不過還是一樣的...WA
與正確輸出不相符(line:1)
您的答案為: none
正確答案為: 153 370 371 407
不過我在windows底下跑100 999 會得到 153 370 371 407
有請強者解答一下,謝謝。
#include<stdio.h>
int main(){
int num1,num2,temp,digit[8]={0};
while(scanf("%d%d",&num1,&num2)!=EOF){
int print_or_not=0;
for(;num1<=num2;num1++){
int count_digit=0;
int i=num1;
digit[8]=0;
while(i>0){
digit[count_digit]=i%10;
i=i/10;
count_digit++;
}
int i1,i2,digit_value;
for(i1=0;i1<count_digit;i1++){
digit_value=digit[i1];
for(i2=2;i2<=count_digit;i2++){
digit[i1]*=digit_value;
}
digit[8]+=digit[i1];
}
if(num1==digit[8]){
printf("%d ",num1);
print_or_not=1; }
}
if(print_or_not==1)
printf("\n");
else
printf("none\n");
}
return 0;
}
附上錯誤訊息= = 真是苦惱啊!我想過是不是他故意先輸入數字大的,所以寫過比大小
不過還是一樣的...WA
與正確輸出不相符(line:1)
您的答案為: none
正確答案為: 153 370 371 407
不過我在windows底下跑100 999 會得到 153 370 371 407
有請強者解答一下,謝謝。
#include
int main(){
int num1,num2,temp,digit[8]={0};
while(scanf("%d%d",&num1,&num2)!=EOF){
int print_or_not=0;
for(;num1<=num2;num1++){
int count_digit=0;
int i=num1;
digit[8]=0;
while(i>0){
digit[count_digit]=i%10;
i=i/10;
count_digit++;
}
int i1,i2,digit_value;
for(i1=0;i1 digit_value=digit[i1];
for(i2=2;i2<=count_digit;i2++){
digit[i1]*=digit_value;
}
digit[8]+=digit[i1];
}
if(num1==digit[8]){
printf("%d ",num1);
print_or_not=1; }
}
if(print_or_not==1)
printf("\n");
else
printf("none\n");
}
return 0;
}