先赞后看,养成习惯。
(虽然有点难度,但对于萌新来说还是可以接受的)
描述
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出 10 个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有一个 30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知 1010 个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。
这道题只要一个 一维数组 就可以解决。
老规矩
#include<iostream>
using namespace std;
int main()
{
return 0;
}
第一步
定义 一维数组
int s[11]={};
顺带提一下:
一维数组 的 [下标] 中只能填下标,返回的是数组里的数据(0~n)。
例如:
int s[2]={1,2};
cout << s[0] << " " <<s[1];
返回的是 :1 2
为什么呢?(见下图)
下标是从0开始的!
第二步
输入10个苹果的高度。
for(int i = 1;i<=10;i++)
{
cin >> s[i];
}
int n;
cin >> n;
(不懂看前面)
n表示陶陶手伸直的长度。
第三步
最重要的来了!
遍历每一个数据:
int ans = 0;
for(int i=1;i<=10;i++)
{
if(n+30>=s[i])
{
ans++;
}
}
因为题目中说:加上板凳30厘米 所以说+30也是一样的。
n+30>=s[i] 是因为碰到就掉,所以等于也是一样。
满足要求ans++(++就是加1的意思)
最后
输出ans
cout << ans << endl;
完整代码:
#include<iostream>
using namespace std;
int s[10];
int n,ans=0;
int main()
{
for(int i = 1;i<=10;i++)
cin >> s[i];
cin >> n;
for(int i=1;i<=10;i++)
{
if(n+30>=s[i])
{
ans++;
}
}
cout << ans << endl;
return 0;
}
拜了个拜 !