我知道这些问题已被解决,但我必须在某些限制下执行这些问题。我是C ++的新手,我只是做一些练习以适应新语言。
首先,我有vector<int> pricelist{12,32,43,23,54}
元素值和元素数量,无关紧要,因为它会根据测试而改变。它位于 Test.cpp 中,它将检查是否符合要求。因此,在这种情况下,测试会检查是否price.getlowestPrice == 0
和price.gethighestPrice == 4
。
我有需要使用的头文件,其中的代码包含,
class Prices{
protected:
int highestPrice;
int lowestPrice;
public:
Trade(const int highPriceIn, const int lowPriceIn)
: highestPrice(highPriceIn), lowestPrice(lowPriceIn) {
}
int getllowestPrice() const {
return lowestPrice;
}
int gethighestPrice() const {
return highestPrice;
}
};
我显然非常无能(你很快就会看到)关于c ++的语法(或者我一般编码)我尝试创建一个方法来查找min和max并返回索引但是我不知道正确的方式(没有添加回报,因为我不知道要返回什么)。
int lowNhightPrices(vector<int> prices) {
int min, max;
max = min = 0;
int currentState;
for (int i = 0; i < prices.size(); ++i) {
{
if (prices[i] < prices[min])
{
min = i;
}
else if (prices[i] > prices[max])
{
max = i;
}
答案 0 :(得分:0)
lowNhightPrices
可以返回最小值和最大值的索引,也可以返回最小值和最大值。无论哪种方式,您都可以使用std::pair<int, int>
作为返回类型。
std::pair<int, int> lowNhightPrices(vector<int> const& prices) {
...
// Return the values.
// return {minValue, maxValue};
// Or, return the indices.
return {minIndex, maxIndex};
}