在数字化时代的浪潮下,编程已经不仅仅是一种技能,更是打开未来大门的钥匙。我们深信,每个孩子都是一个潜在的天才,只需要正确的引导和培养,他们就能在编程的世界中创造无限可能。 我们热衷于为孩子们提供高质量的编程指导。我们将编程视为一种思维工具,通过培养逻辑思维、问题解决能力和创新能力,我们致力于让每个孩子都能在信息学领域发挥出自己的潜力。 我们不仅仅局限于编程语言和算法,更着重培养孩子们的问题分析和解决能力,以及团队协作和沟通技巧。通过有趣的项目和挑战,我们将帮助孩子们逐步掌握信息学竞赛所需的知识和技能。 如果您希望和我们一起为孩子们提供一个积极、充满挑战性和公益性质的编程学习平台,欢迎加入我们!
前面的文章中我们跟幼儿园的小朋友们讲过了顺序结构、选择结构和循环结构,下面我们结合前面学习内容,来实战一下,看看真实的信息奥赛(NOIP)题目是什么样子。
【问题描述】
津津的零花钱一直都是自己管理。每个月的月初妈妈给津津 300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。
为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那里,到了年末她会加上 20% 还给津津。因此津津制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果她预计到这个月的月末手中还会有多于 100 元或恰好 100 元她就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。
例如 11 月初津津手中还有83元,妈妈给了津津300元。津津预计 11 月的花销是 180元,那么她就会在妈妈那里存 200 元,自己留下 183 元。到了 11 月月末,津津手中会剩下了 3 元钱。
津津发现这个储蓄计划的主要风险是,存在妈妈那里的钱在年末之前不能取出。有可能在某个月的月初,津津手中的钱加上这个月妈妈给的钱,不够这个月的原定预算。如果出现这种情况,津津将不得不在这个月省吃俭用,压缩预算。
现在请你根据 2004 年 1 月到 12 月每个月津津的预算,判断会不会出现这种情况。如果不会,计算到 2004 年年末,妈妈将津津平常存的钱加上 20% 还给津津之后,津津手中会有多少钱。
【输入】
输入12行数据,每行包含一个小于 350 的非负整数,分别表示 1 月到 12 月津津的预算。
【输出】
输出包括一行,这一行只包含一个整数。如果储蓄计划实施过程中出现某个月钱不够用的情况,输出-X,叉表示出现这种情况的第一个月否则输出到2004 年年末津津手中会有多少钱。
【样例输入 1】
290
230
280
200
300
170
340
50
90
80
200
60
【样例输出 1】
-7
【样例输入 2】
290
230
280
200
300
170
330
50
90
80
200
60
【样例输出 2】
1580
【分析问题】
当我们分析这个题目时,我们可以按照以下步骤来解决问题:
- 理解题意:首先,我们要仔细理解题目的描述,明白津津的储蓄计划和情况。我们已经知道了每个月的预算和妈妈的储蓄计划。
- 问题分解:将问题分解为两个部分。首先,我们需要判断在每个月津津是否能够按照妈妈的储蓄计划进行,并且不出现预算不足的情况。其次,如果每个月都能够按计划进行,我们需要计算到年末津津手里会有多少钱。
- 计算每个月的情况:从1月到12月,对每个月进行如下操作:
- 判断津津手上的钱加上这个月的预算是否足够她的储蓄计划,如果不够,记录下这个月的序号并停止。
- 如果足够,根据妈妈的储蓄计划,将整百的钱存在妈妈那里,剩下的钱保留在津津手里。
- 计算年末的钱:如果以上每个月的操作都能成功进行,那么说明津津的储蓄计划是有效的。在这种情况下,我们可以计算年末津津手里的钱。将每个月剩余的钱相加,再加上妈妈按20%的比例返还的钱,就能得出年末的总金额。
- 输出结果:如果在步骤3中发现了某个月预算不足,那么输出该月的序号,表示出现了问题。如果全部月份都执行成功,那么输出年末的总金额。
综上所述,我们可以用编程语言来实现这个解决方案。在代码中,我们将逐个遍历每个月的预算,判断津津的储蓄计划是否能够成功执行,然后根据情况计算年末的总金额或者输出出现问题的月份。
【代码实现】
代码语言:javascript复制#include <iostream>
#include <cmath>
using namespace std;
int mth,ma,a;
int main()
{
for(int i = 1; i <= 12; i )
{
cin >> mth;
a = a 300 - mth;
if(a < 0)
{
cout << '-' << i << endl;
return 0;
}
ma = ma a/100 * 100;
a = a % 100;
}
cout << ma ma/5 a << endl;
return 0;
}
代码非常简单,相信小朋友们一定就能看懂。