c# - 需要在限制之前停止的上限金额
问题描述
我一直在尝试制作一个程序,您输入一个数字,我一直在询问数字,直到它们的总和达到数字并显示它需要多少个数字。我面临的问题是,如果最后一个数字超过输入数字,它仍然会计算它,而它应该停止。
static void Main(string[] args)
{
int sumLimit = Convert.ToInt32(Console.ReadLine());
int sum = 0;
int count = 0;`
while (sum < sumLimit)
{
int number = Convert.ToInt32(Console.ReadLine());
sum += number;
count++;
}
Console.WriteLine(sum + " " + count);
Console.ReadLine();
}
解决方案
这是修复它的一个选项,根据您的预期结果,您可以让计数从 -1 或 0 开始:
int sumLimit = Convert.ToInt32(Console.ReadLine());
int sum = 0;
int count = -1;
int number = 0;
while (sum + number < sumLimit)
{
sum += number;
count++;
number = Convert.ToInt32(Console.ReadLine());
}
Console.WriteLine(sum + " " + count);
Console.ReadLine();
推荐阅读
- java - 通过构造函数参数 2 表示的不满足的依赖关系
- sql - SQL查询,循环数据
- r - 在多个条件上使用匹配以在 R 中生成值
- javascript - 在数组 JS 中多次使用修剪
- powerbi - 我可以将 Power BI 仪表板导出到 Data Studio 吗?
- r - R中的预测函数:因子有新的水平误差
- javascript - 如何在谷歌云上使用已安装的 mongodb
- python - 不同数量的嵌套for循环
- javascript - 等待 inject.js 完全执行,然后再继续 popup.js
- amazon-web-services - AWS Autopilot 的精度和召回率