已知一个整数n,打印1到n所有除以m后所得商正好是它的各个数字平方和的数。
输入格式:
为两个用空格分隔的整数,它们依次代表n、m(1<m,n<10000)。
输出格式:
按从小到大的顺序依次输出所有满足条件的整数,每个数占一行。测试用例保证有满足条件的数。
```c
#include<stdio.h>
main()
{
int n,m;
int a;//妀
int b=0;
scanf("%d %d",&n,&m);
int i=1;
int j=1;
while(i<n)
{
a=i/m;
while(j>0)
{
b=b+(j%10)*(j%10);
j=j/10;
}
if(a==b)
{
printf("%d\n",i);
}
i++;
j++;
}
return 0;
}
```
少了两句,代码修改如下:
#include<stdio.h>
int main()
{
int n,m;
int a;//妀
int b=0;
scanf("%d %d",&n,&m);
int i=1;
int j=1;
while(i<n)
{
a=i/m;
//添加这两句
j = i;
b=0;
while(j>0)
{
b=b+(j%10)*(j%10);
j=j/10;
}
if(a==b)
{
printf("%d\n",i);
}
i++;
j++;
}
return 0;
}