打印输入的最小数字(不包括任何负数)
Printing the smallest number inputed (Excluding any negatives)
我正在编写的程序允许用户输入任意数量的正整数。然而,当有人输入负数时,它应该退出。
到目前为止,所有这些都为我工作得很好。我的下一个问题是打印最小的正数。
这是我的代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int input;
int count;
int min;
count = 0;
cout << "Input a positive integer to begin: ";
cin >> input;
count++;
while(input > 0)
{
cout << "Continue to input positive integers. Enter negative number to exit: ";
cin >> input;
count++;
min = input;
if (input < min);
min = input;
if (input < 0)
{
cout << "nLowest number: " << min << endl;
cout << "Total numbers inputed: " << --count << endl;
break;
}
}
}
到目前为止,当我运行它时,代码给了我这个:
输入正整数开始:45
继续输入正整数。输入负数退出:48
继续输入正整数。输入负数退出:74
继续输入正整数。输入负数退出:1
继续输入正整数。输入负数退出:-1
最小值:-1
总输入数:4
然而,我希望它打印出最低数字是1或用户输入的任何小正整数。
任何帮助将不胜感激!谢谢!
你有两个问题导致这个:
1:
if (input < min);
你不应该在if
后面放分号,不管它是真还是假,紧接在if
后面的代码将执行
2:修复第一个问题后:
if (input < min)
min = input;
将满足条件的input
赋值给min
,为偶数因此,必须添加另一个条件以确保input
为正,然后将其赋值为
if ((input < min) && (input > 0))
min = input;
编辑:你需要删除正好放在if
之前的min = input;
完整代码:
#include <iostream.h>
#include <iomanip.h>
int main()
{
int input;
int count;
int min;
count = 0;
cout << "Input a positive integer to begin: ";
cin >> input;
count++;
while(input > 0)
{
cout << "Continue to input positive integers. Enter negative number to exit: ";
cin >> input;
count++;
if ((input < min) && (input > 0))
min = input;
if (input < 0)
{
cout << "nLowest number: " << min << endl;
cout << "Total numbers inputed: " << --count << endl;
break;
}
}
}
在检查最小值是否为负之前更新最小值:
if (input < min)
...
if (input < 0)
...
您所需要做的就是交换两个if块,这样当遇到负数时,程序首先检查它是否为负,并且在第二个if块之前执行break
。
而且,在你的代码中似乎有一个额外的分号(和一个额外的赋值?)
相关文章:
- 奇怪的(对我来说)返回声明 - 在谷歌上找不到任何关于它的信息
- 如何在不产生任何垃圾的情况下获得C中的像素
- 为什么 cmake 许可证<>样式不包括?
- 计算平均值,不包括上次得分
- 打印时有二叉树问题.用户输入不打印任何内容
- QChart在使用QDateTimeAxis时不显示任何系列数据
- 将值从另一个数组写入数组,不包括不需要的值 C++
- 这是使用回溯的 nqueen 问题,但我使用了动态 2d 数组,我的程序编译良好,但不返回任何输出
- OpenGL 着色器不绘制任何东西 - 糟糕的精灵类
- 为什么静态数组成员变量在调用对象的实例后不显示任何内容?
- 类和构造函数中的函数根本不起作用,并且不返回任何错误
- 不执行任何操作的函数调用C++
- 如果语句不包括文本行?
- RtMidi - MidiInDummy:此类不提供任何功能
- 为什么这个程序对投掷不做任何事情?
- Gtkmm 窗口为空白,不显示任何小部件或标题
- 在不包括任何内容的情况下获得错误声音
- 是否有任何cpp函数或对象(不包括从c继承的)不是线程安全的,即使每个线程对自己的数据进行操作
- 在任何头文件中只定义一个类,而不包括包含此类的整个头文件的目的是什么?
- 打印输入的最小数字(不包括任何负数)