欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2845|回復: 1
打印 上一主題 下一主題
收起左側

C語言的算法:放禮炮程序

[復制鏈接]
跳轉到指定樓層
樓主
學技術,重在日拱一卒,一點一滴的積累。

今天,我們一起來分析C語言的算法:放禮炮。

算法:在節日開幕式上,有A、B、C三艘船要同時開始鳴放禮炮各21響。已知A船每隔5秒放1次,B船每隔6秒放1次,C船每隔7秒放1次。假設各炮手對時間的掌握非常準確,請用C語言計算觀眾總共可以聽到多少次禮炮聲。


編程思路:

1、先定義一個變量來記錄當前的時間值,通過對時間的分析,來判斷是否有禮炮聲。分析題目,我們可以知道船C最后完成放禮炮,即可以以船C停止的時間作為時間判斷的終點。判斷在C停止之前,有多少聲禮炮。

2、由于三個船的禮炮具有一定的時間周期,就會存在一個時間點,放好幾個禮炮的可能性,但是對于我們而言那就是一聲禮炮的聲音。

3、即對于禮炮聲,同一個時間點,只會有一聲禮炮,也就是多選一的情況,要么就都不響,要么就是當前時間點只響一下,可以用if-else if選擇語句實現。

程序范例

#include <stdio.h>

int n, t;   

int main()

{

  n = 0;     

  for (t=0; t<=20*7; t++)            

  {

    if ((t%5 == 0) && (t <= 20*5))   

    {

       n++;                 

     }

    else if ((t%6 == 0) && (t <= 20*6))   

    {

      n++;                 

    }

    else if (t%7 == 0)                  

    {

       n++;

     }

  }

  printf("禮炮聲n = %d\n", n);

}

程序運行結果:
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:821429 發表于 2023-7-24 23:58 | 只看該作者
n=2;
for(i=7;i<=7*20;i+=7)
{
    n+=(i%6==0);
    n+=(i%5==0);
}
out=21*3-n;
這樣對嗎,有點像NOI的題目
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表