当前位置: 代码迷 >> C语言 >> [求助]偶不知道这个双重循环怎么弄
  详细解决方案

[求助]偶不知道这个双重循环怎么弄

热度:169   发布时间:2006-10-18 10:16:25.0
[求助]偶不知道这个双重循环怎么弄
我刚刚开始学c,半个月了吧,昨天遇到了个问题,很郁闷,估计要用双重循环,可是偶不清楚怎么弄,试了半天了,就是弄不清楚,问题是这样的:
有一个长阶梯,若每次跨2阶最后剩1阶,每次3阶最后剩2阶,每次5阶剩4阶,每次6阶剩5阶,每次7阶刚刚不剩,问有几阶?
不知道哪位高人能帮我写出来呢,小弟先谢谢了!!

----------------解决方案--------------------------------------------------------
用一个循环应该就可以了!
设阶梯数为n。
判断条件是(n%2==1)&&(n%3==2)&&(n%5==4)&&(n%6==5)成立就结束循环。
----------------解决方案--------------------------------------------------------

#include "stdio.h"
void main()
{
int i;
for(i=14;i<100;i+=7)/*相信不会超过100,*/
if(i%2==1&&i%3==2&&i%5==4&&i%6==5&&!(i%7))
printf("The number is %d",i);
getch();
}
好了吧!


----------------解决方案--------------------------------------------------------
以下是引用yipilang在2006-10-18 21:11:04的发言:

#include "stdio.h"
void main()
{
int i;
for(i=14;i<100;i+=7)/*相信不会超过100,*/ //可以算14,当然也可以从21开始了.
if(i%2==1&&i%3==2&&i%5==4&&i%6==5&&!(i%7))
printf("The number is %d",i);
getch();
}
好了吧!

7,14 21 28 35 43 49 56 63 77 84 91 98 都不是
答案是119.

#include "stdio.h"
void main()
{
int i;
for(i=7;;i+=14)/*相信不会超过100,*/
if(i%2==1&&i%3==2&&i%5==4&&i%6==5&&!(i%7))
{
printf("The number is %d",i);
break;
}
getch();
}


----------------解决方案--------------------------------------------------------
谢谢啊,


----------------解决方案--------------------------------------------------------
  相关解决方案