正常血压
#include <iostream>
using namespace std;
int main()
{
int n ;
cin >> n; //设n次测量
int ans = 0 ;//设置一个答案来和每次即将刷新的cnt打擂台,并及时更新ans
int cnt = 0 ;//设置一个计数器来存储持续正常的小时数
for( int i = 1; i <= n; i++)//每次测量
{
int ssy ,szy;//设收缩压和舒张压
cin >> ssy >> szy ;
if( ssy >= 90 && ssy <= 140 && szy >= 60 && szy <= 90)//正常的条件
{
cnt++;
}
else//不正常
{
if( cnt > ans )//如果更新时,计数器内的数比答案内的数大,就更新一下
{
ans = cnt;
}
cnt = 0;//cnt刷新为0
}
}
cout << ans << endl;
return 0;
}
统计满足条件的四位数
#include <iostream>
using namespace std;
int main()
{
int cnt = 0;//计数器,用来存放满足条件数的个数
int n;
cin >> n;
for(int i = 1; i <= n; i++)//每一个四位数
{
int num;
cin >> num;
int ge ,shi ,bai ,qian;
ge = num % 10;
shi = num / 10 % 10 ;
bai = num /100 % 10;
qian = num /1000;
if( ge - qian - bai - shi > 0)
{
cnt++;
}
}
cout << cnt ;
return 0;
}
求分数序列和
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n ;//记得结果转换为浮点型,乘1.0
cin >> n;
int q = 1,p = 2;//开辟分子q和分母p的空间
double sum = q*1.0/p ;//开辟序列和的空间,并放入第一项,从第二项开始加起
//一般都是赋sum=0,这里递进了一项
for(int i = 2; i <= n; i++)//每一项
{
int t = q;//先把分子q里的值拿出来给t
q = q + p ;//求分子的递推结果,此时,分母p并为发生改变
p = t ;//再把t赋给分母
sum += q*1.0/p;//逐项累加
}
cout << fixed << setprecision(4) << sum << endl;
return 0;
}
药房管理
#include <iostream>
using namespace std;
int main()
{
int m;//设m为目前总的药数
cin >> m;
int n;//设n为取药的总人数
cin >> n;
int cnt =0;//计数器,存储没有取到药的人数
for(int i =1; i <= n;i++ )//每位病人
{
int yao;
cin >> yao;//每次取药的量
if ( yao > m )
{
cnt++;//如果药不够,计数器加一
}
else
{
m -= yao ;//如果药够,药品总量m减去yao
}
}
cout << cnt << endl;
return 0;
}
余数相同问题
#include <iostream>
using namespace std;
int main()
{
int a,b,c;//给三个整数开辟空间
cin >> a >> b >> c;
for(int x =2; x <= 1000000; x++ )//从2到100 0000依次枚举
{
int ay = a % x ;
int by = b % x ;
int cy = c % x ;
if( ay == by && by == cy )//判断每组余数是否相同
{
cout << x;
}
}
return 0;
}
分苹果(奥数题)(脑筋急转弯)
#include <iostream>
using namespace std;
int main()
{
int n;//n个小朋友
cin >> n;
int sum = 0;
for(int i =1; i <=n; i++)//只要第一个小朋友拿一个,第二个拿两个....
{
sum += i;
}
cout << sum ;
return 0;
}
输出第n位小数
#include <iostream>
using namespace std;
int main()
{
int a,b;
cin >> a >> b;
int n ;//小数点后n位
cin >> n;
int ans ;
for (int i = 1;i <= n; i++)//小数点的后n位
{
//把第n位分离出来
int yu = a % b;//取余
ans = yu * 10 / b;//余乘10,再除原分母
a = yu * 10;//把原分子更新迭代
}
cout << ans ;//输出第n位小数
return 0;
}