为了账号安全,请及时绑定邮箱和手机立即绑定

for循环的问题

for循环的问题

C C++
Leo也叫做夹子 2016-11-14 21:18:10
题目描述:在海军节开幕式上,有A、B、C三艘军舰要同时开始鸣放礼炮各20响。已知A舰每个6秒放一次,B舰每隔6秒放一次,C舰每隔7秒放一次。假设各炮手对时间的掌握非常准确,请编程计算观众总共可以听到几次炮声count起不到计数的作用,求解
查看完整描述

2 回答

已采纳
?
RedJoyy

TA贡献11条经验 获得超7个赞

//img1.sycdn.imooc.com//582aaf79000134b105080397.jpg

我用的前端的方法,大概逻辑是,将每艘船每次放炮的时间放在 arr 这个数组里,然后将数组中重复的时间去掉,剩下的就是不在同一时间放炮的次数。
你刚刚写的那个方法,if判断的位置放的有问题,而且没有考虑到重复减的问题。所以值可能不对。

查看完整回答
反对 回复 2016-11-15
?
RedJoyy

TA贡献11条经验 获得超7个赞

题目没有给在多少时间内,观众可以听到几次炮声。
代码没有问题。不是count没生效,只是不存在 if (asecond == bsecond || asecond == csecond || bsecond == csecond) 这种情况,其中每一项都不满足,所以count并没有加一,一直为零显示。
你可以在那条if语句后加else,打印下count,你会得到 count = 20,说明循环正常,只是不存在满足的情况。

前端就在console里试了下,但原理跟c一样
//img1.sycdn.imooc.com//582a82ff00013a2907230285.jpg

查看完整回答
反对 回复 2016-11-15
  • Leo也叫做夹子
    Leo也叫做夹子
    soory,是我的问题,题目是给了条件的,规定每艘军舰放炮21次, 还有我没看懂你说的没有这种情况,像第5*6s时A船放炮,b船也放炮,不就只听到一声吗,此时不就满足a(6)*5=b(5)*6,即as=bs吗,望告知~~
  • RedJoyy
    RedJoyy
    那那个5,6,7是什么?
  • RedJoyy
    RedJoyy
    呃,酱紫呀,答案是54么?
点击展开后面1
  • 2 回答
  • 0 关注
  • 1937 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信