question archive I really had a difficult time with understanding this problem
Subject:Computer SciencePrice: Bought3
I really had a difficult time with understanding this problem. Please help me de bug it, and understand where I went wrong.
Problem:
8.14 LAB: Output values below an amount - functions
a program that first gets a list of integers from input. The input begins with an integer indicating the number of integers that follow. Then, get the last value from the input, and output all integers less than or equal to that value.
Ex: If the input is:
5 50 60 140 200 75 100
the output is:
50 60 75
The 5 indicates that there are five integers in the list, namely 50, 60, 140, 200, and 75. The 100 indicates that the program should output all integers less than or equal to 100, so the program outputs 50, 60, and 75. For coding simplicity, follow every output value by a space, including the last one.
Such functionality is common on sites like Amazon, where a user can filter results.
your code to define and use two functions:
vector<int> GetUserValues(vector<int>& userValues, int numValues)
void OutputIntsLessThanOrEqualToThreshold(vector<int> userValues, int upperThreshold)
Utilizing functions helps to make main() very clean and intuitive.
Note: This is a lab from a previous chapter that now requires the use of functions.
Code:
#include <iostream>
#include <vector>
using namespace std;
boolGetUserValues(vector<int> myVec)
{
for (int i = 0; i < myVec.size(); ++i)
{
if (myVec[i] % 2 == 1)
{
return false;
}
}
return true;
}
bool OutputIntsLessThanOrEqualToThreshold(vector<int> myVec)
{
for (int i = 0; i < myVec.size(); ++i)
{
if (myVec[i] % 2 == 0)
{
return false;
}
}
return true;
}
int main()
{
vector<int> vec;
int n, num,i;
cin >> n;
for (i = 0; i < n; ++i)
{
cin >> num;
vec.push_back(num);
}
if (GetUserValues(vec))
{
cout << "0" << endl;
}
else if (OutputIntsLessThanOrEqualToThreshold(vec))
{
cout << "0" << endl;
}
else
{
cout << "" << endl;
}
return 0;
}