【C语言编程练习】5.9 爱因斯坦的阶梯问题

1. 题目要

有一个长阶梯,每2步上,最后剩1个台阶,若每3步上,最后剩2个台阶.若每5步上,最后剩4个台阶,若每6步上,最后剩5个台阶。只有每步上7阶,才可以刚好走完,请问台阶至少有多少阶?

2. 题目分析

如果台阶一共是X阶,那么就有如下的关系

X%2=1

X%3=2

X%5=4

X%6=5

X%7=0

也转换成在解空间中找出满足上述条件的值。

3. 代码尝试

【自己的代码】

#include "stdio.h"

int main(){

int x=0;

int flag=1;

while(flag){

if(x%2==1&&x%3==2&&x%5==4&&x%6==5&&x%7==0){

flag=0;

}else ++x;

}

printf("the results of the Einstain's question is %d\n",x);

}

【C语言编程练习】5.9 爱因斯坦的阶梯问题

【参考答案的代码】

懒得打了,它的核心是用能被7整除的数来计算

4. 总结

果然自信心很重要,在不看参考代码的前提下,自己独立思考,有一种别样的快乐呢!

上一篇:通过sort()方法实现升序和降序排列


下一篇:Python装饰器、内置函数之金兰契友