C趣味程序百例(21)除式还原(1)
66.除以除法(1)
给定下面的除法,其中包含5个7,其余的都是任意数。请恢复它们。[/Br/][/Br/]×7×-Br/]×7×[/Br/]-[/Br/]××××[/Br/]-[/Br/]*题目分析从除数本身的书中得知:
1。被除数的范围是10000到99999,除数的范围是10到99,可整除;
2。商在100到999之间,十位数为7;
3。商的第一位和除数的乘积是三位数,后两位是77;
4。被除数的第三位必须是4;
5和7乘以除数的乘积是一个三位数,第二位数是7;
6。商的最后一位不能是0,与除数的乘积是两位数。
有了已知的条件,我们可以用穷举法求出结果。
*程序和程序注释
# include
void main()
{
long int I;
int j,l;
for(I = 10000;If (I% 1000-I% 100 = = 400)/* 4。被除数的第三位必须是4 */
for(j = 10;if(I % J = = 0 & &(L = I/J)% 100 > = 70 & & L % 100100 & & L = 70 & & J * 7% 100 if(J *(L/100)% 100 = = 77 &
}
*运行结果
51463/53=971。
可以认为是以下公式:
9 7 1
-
5 3 | 5 1 4 6 3
4 7 7
-
3 7 6
3 7 1
-
5 3
5 3
-
○
0条评论