一、知识点
该题目有现实意义
二、题目
1、描述
某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。
小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。
数据范围:输入的正整数满足 1≤𝑛≤100 1≤n≤100
注意:本题存在多组输入。输入的 0 表示输入结束,并不用输出结果
2、输入
输入文件最多包含 10 组测试数据,每个数据占一行,仅包含一个正整数 n( 1<=n<=100 ),表示小张手上的空汽水瓶数。n=0 表示输入结束,你的程序不应当处理这一行。
3、输出
对于每组测试数据,输出一行,表示最多可以喝的汽水瓶数。如果一瓶也喝不到,输出0。
三、自己写的代码
#include<stdio.h>
int main() {
int n[10];
int i = 0, m, sum;
for (i = 0; i < 10; i++) {
scanf("%d", &n[i]);
if (n[i] == 0) {
i = 10;
}
}
i = 0;
while (n[i] != 0) {
m = n[i];
sum = 0;
while (m >= 2) {
if (m == 2) {
sum += 1;
break;
}
sum += m / 3;
m = m / 3 + m % 3;
}
printf("%d\n", sum);
i++;
}
return 0;
}