Please write the code for the removeOdds function using vectors. Will thumbs up if correct!

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%

Please write the code for the removeOdds function using vectors. Will thumbs up if correct!

```cpp
// b. Implement the removeOdds function :
#include <vector>
#include <algorithm>
#include <iostream>
#include <cassert>
using namespace std;

// Remove the odd integers from v. It is acceptable if the order of
// the remaining even integers is not the same as in the original vector.
void removeOdds(vector<int>& v)
{
    // Function body to be implemented
}

void test()
{
    int a[8] = { 2, 8, 5, 6, 7, 3, 4, 1 };
    vector<int> x(a, a + 8);  // construct x from the array
    assert(x.size() == 8 && x.front() == 2 && x.back() == 1);
    removeOdds(x);
    assert(x.size() == 4);
    sort(x.begin(), x.end());
    int expect[4] = { 2, 4, 6, 8 };
    for (int k = 0; k < 4; k++)
        assert(x[k] == expect[k]);
}

int main()
{
    test();
    cout << "Passed" << endl;
}
```

**Explanation:**

This C++ program template is designed to demonstrate how to remove odd integers from a vector. The key components of the code include the implementation of a test function and the declaration of the `removeOdds` function, which currently lacks a functional body. Once implemented, the `removeOdds` function should filter out odd numbers from the passed vector.

- **Libraries Included:**
  - `<vector>`: For using the `vector` data structure.
  - `<algorithm>`: For utility functions like `sort`.
  - `<iostream>`: For input and output operations.
  - `<cassert>`: For checking assertions during testing.

- **removeOdds Function:**
  - This function is declared to remove odd elements from a vector passed by reference. The function body is currently a placeholder and must be implemented.

- **test Function:**
  - A predefined array of integers is converted into a vector.
  - An assertion checks the initial conditions of the vector (`size`, `front`, and `back`).
  - The `removeOdds` function is called on the vector.
  - After odds are removed, the vector is checked again for expected conditions — both `size` and contents.
  - The vector is sorted to help verify that
Transcribed Image Text:```cpp // b. Implement the removeOdds function : #include <vector> #include <algorithm> #include <iostream> #include <cassert> using namespace std; // Remove the odd integers from v. It is acceptable if the order of // the remaining even integers is not the same as in the original vector. void removeOdds(vector<int>& v) { // Function body to be implemented } void test() { int a[8] = { 2, 8, 5, 6, 7, 3, 4, 1 }; vector<int> x(a, a + 8); // construct x from the array assert(x.size() == 8 && x.front() == 2 && x.back() == 1); removeOdds(x); assert(x.size() == 4); sort(x.begin(), x.end()); int expect[4] = { 2, 4, 6, 8 }; for (int k = 0; k < 4; k++) assert(x[k] == expect[k]); } int main() { test(); cout << "Passed" << endl; } ``` **Explanation:** This C++ program template is designed to demonstrate how to remove odd integers from a vector. The key components of the code include the implementation of a test function and the declaration of the `removeOdds` function, which currently lacks a functional body. Once implemented, the `removeOdds` function should filter out odd numbers from the passed vector. - **Libraries Included:** - `<vector>`: For using the `vector` data structure. - `<algorithm>`: For utility functions like `sort`. - `<iostream>`: For input and output operations. - `<cassert>`: For checking assertions during testing. - **removeOdds Function:** - This function is declared to remove odd elements from a vector passed by reference. The function body is currently a placeholder and must be implemented. - **test Function:** - A predefined array of integers is converted into a vector. - An assertion checks the initial conditions of the vector (`size`, `front`, and `back`). - The `removeOdds` function is called on the vector. - After odds are removed, the vector is checked again for expected conditions — both `size` and contents. - The vector is sorted to help verify that
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Passing Array as Argument
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education