Attempt History
Attempt Time Score
KEPT Attempt 2 9 minutes 27 out of 28
LATEST Attempt 2 9 minutes 27 out of 28
Attempt 1 38 minutes 26.5 out of 28
Correct answers are hidden.
Score for this attempt: 27 out of 28
Submitted Dec 22 at 4:42pm
This attempt took 9 minutes.
Question 1
pts
What will happen when you attempt to compile and run the following code?
#include <iostream>
#include <algorithm>
#include <vector>
#include <deque>
#include <set>
using namespace std;
void myprint(int i) {
cout << i << ", ";// Line I
}
int main() {
int mynumbers[] = { 3, 9, 0, 2, 1, 4, 5 };
vector<int> v1(mynumbers, mynumbers + 7);
set<int> s1(mynumbers, mynumbers + 7);
deque<int> d1(mynumbers, mynumbers + 7);
d1.pop_front();// Line II
for_each(v1.begin(), v1.end(), myprint); // Line III
for_each(s1.begin(), s1.end(), myprint);
for_each(d1.begin(), d1.end(), myprint);
return 0;
}
compilation error in LINE II
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 9, 0, 2, 1, 4, 5,
,program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 3, 9, 0, 2, 1, 4,
the exception will be thrown at LINE II
the exception will be thrown at LINE III
compilation error in LINE I
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 3, 9, 0, 2, 1, 4, 5,
Question 2
pts
What will happen when you attempt to compile and run the following code? Choose all
that apply.
#include <iostream>
#include <algorithm>
#include <vector>
#include <deque>
#include <set>
using namespace std;
struct myprinter {
void operator() (int i) {cout << i << ", ";}
};
int main() {
int mynumbers[] = { 3, 9, 0, 2, 1, 4, 5 };
vector<int> v1(mynumbers, mynumbers + 7);
deque<int> d1(mynumbers, mynumbers + 7);
set<int> s1(mynumbers, mynumbers + 7);
v1.pop_back(5);// Line I
for_each(s1.begin(), s1.end(), myprinter()); // Line II
for_each(d1.begin(), d1.end(), *(new myprinter())); // Line III
for_each(v1.begin(), v1.end(), myprinter); //Line IV
, return 0;
}
compilation error in LINE III
compilation error in LINE IV
compilation error in LINE II
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 9, 0, 2, 1, 4, 5, 3, 9, 0, 2, 1, 4, 5,
compilation error in LINE I
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 9, 0, 2, 1, 4, 5, 3, 9, 0, 2, 1, 4, 5, 5
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9, 9, 0, 2, 1, 4, 5, 3, 9, 0, 2, 1, 4,
Question 3
pts
What will happen when you attempt to compile and run the following code?
#include <iostream>
#include <algorithm>
#include <vector>
#include <deque>
#include <set>
using namespace std;
class A {
int a;
public:
A(int a):a(a) {}
, int getA() const { return a;} void setA(int a){ this->a = a;}
bool operator < ( const A & b) const { return a<b.a;}
};
struct myprinter { void operator() (const A & a) {cout << a.getA() << ",
";} };
struct doubler
{
void operator() (A a) { a.setA(a.getA()*2) ;}//LINE I
};
int main() {
int mynumbers[] = { 3, 9, 0, 2, 1, 4, 5 };
vector<A> v1(mynumbers, mynumbers + 7);
set<A> s1(mynumbers, mynumbers + 7);
for_each(v1.begin(), v1.end(), doubler()); for_each(v1.begin(), v1.end(),
myprinter());//LINE II
for_each(s1.begin(), s1.end(), doubler()); for_each(s1.begin(), s1.end(),
myprinter());//LINE III
return 0;
}
compilation error in LINE I
compilation error in LINE III
the exception will be thrown at LINE I
compilation error in LINE II
program outputs: 6, 18, 0, 4, 2, 8, 10, 0, 2, 4, 6, 8, 10, 18,
program outputs: 6, 18, 0, 4, 2, 8, 10, 6, 18, 0, 4, 2, 8, 10,
program outputs: 3, 9, 0, 2, 1, 4, 5, 0, 1, 2, 3, 4, 5, 9,