细菌的繁殖

一种细菌的繁殖速度是每天成倍增长。例如:第一天有10个,第二天就变成20个,第三天变成40个,第四天变成80个,……。现在给出第一天的日期和细菌数目,要你写程序求出到某一天的时候,细菌的数目。
在这里插入图片描述
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{  int n;
   int a[100];           //根据输出格式,用数组a存储需要输出的值
 cin >> n;             //次数设为n
 int M[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
 for (int i = 1; i <=n; i++)
 {   int A, B,k,C,D;   //初始值细菌设为k
 cin >>A>> B>> k>>C>>D;
  int t=0;              //这里需要求出细菌繁殖经历的时间记做 t
  if (A!=C)             //不在同月时 
  {int benyue = M[A] - B;//当月剩余天数
   for (int j = A+1; j < C ; j++)
   {t=t+M[j];}           //从A到C月间隔天数
   t = t + D+ benyue;}
   else                 //当在同一月时
  {t= D- B;}
  for (int j = 0;j <t; j++)
     {k= k * 2;}           //每一天翻一番
      a[i]=k;
 }
 for(int i=1;i<=n;i++)
 cout<<a[i]<<endl;          //输出
}
   

在这里插入图片描述

发布了15 篇原创文章 · 获赞 17 · 访问量 6923

猜你喜欢

转载自blog.csdn.net/weixin_45907018/article/details/104135780