本帖最后由 jinzeyu 于 2012-3-3 21:11 编辑
这道题很简单 要求用批处理实现
加分:一个技术分
问555555的约数中最大的三位数是多少?
*问题分析与算法设计
根据约数的定义,对于一个整数N,除去1和它自身外,凡能整除N的数即为N的约数。因此,最简单的方法是用到2之间N-1的所有数去除N,即可求出N的全部约数。本题只要求取约数中最大的三位数,则其取值范围可限制在100到999之间
*程序说明与注释- #include<stdio.h>
- int main()
- {
- long i;
- int j;
- printf("Please input number:");
- scanf("%ld",&i);
- for(j=999;j>=100;j--)
- if(i%j==0)
- {
- printf("The max factor with 3 digits in %ld is:%d,\n",i,j);
- break;
- }
- }
复制代码 *运行结果
输入:555555
输出:The max factor with 3 digits in 555555 is:777 |