礼炮问题
在海军节开幕式上,有A、B、C三艘军舰要同时开始鸣放礼炮各21响。已知A舰每隔5秒放1次,B舰每隔6秒放1次,C舰每隔7秒放1次。假设各炮手对时间的掌握非常准确,请编程计算观众总共可以听到几次礼炮声。
#include <iostream>
using namespace std;
int main()
{
int i=0,n=0; //n为被盖住的礼炮次数,实际上就是公倍数
for(i=0;i<21;i++){
if(5*i%6==0)
n++;
if(5*i%7==0)
n++;
if(6*i%7==0)
n++;
}
printf("%\d",21*3+1-n); //0s时刻被多算一次
return 0;
}
看见大部分用数组的做法有点奇怪,如有错误劳烦指出