优秀的编程知识分享平台

网站首页 > 技术文章 正文

爱因斯坦的阶梯问题

nanyue 2025-04-24 06:13:41 技术文章 1 ℃

题目要求:

爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。请问该阶梯至少有多少阶。编写一个C程序解决该问题。

#include <string.h> 
#include <stdio.h> 

void main()
{
    int x=7,i,res,flag=0;
    for(i=1;i<=100;i++)				/*将循环次数定为100*/
    {
        if((x%2==1)&&(x%3==2)&&(x%5==4)&&(x%6==5) )
									/*如果x符合题目叙述的要求*/
        {
            res=x;
            flag=1;
            break;          			/*跳出循环,不再进行比较*/
        }
        x=7*(i+1);						/*x取值为7的整数倍*/
    }
    if(1==flag)
        printf("The result of Einstein's question is %d",res);
									/*输出答案*/
    else
        printf("In this rage cannot get result\n ");
									/*在程序限定的范围内找不到答案*/

	getche();
}

运行结果:

最近发表
标签列表