Deal of The Day! Hurry Up, Grab the Special Discount - Save 25% - Ends In 00:00:00 Coupon code: SAVE25
Welcome to Pass4Success

- Free Preparation Discussions

C++ Institute CPP Exam - Topic 9 Question 87 Discussion

Posted by Flo on Jun 21, 2024 at 09:57 PM

What happens when you attempt to compile and run the following code?

#include

#include

#include

using namespace std;

int main(){

int myints[] ={ 3, 4, 2, 1, 6, 5, 7, 9, 8, 0 };

vectorv(myints, myints+10);

set s1(v.begin(),v.end());

s1.insert(v.begin(),v.end());

s1.erase(s1.lower_bound(2),s1.upper_bound(7));

for(set::iterator i=s1.begin();i!= s1.end(); i++) {

cout<<*i<<" ";

}

return 0;

}

Suggested Answer: B

Get Premium CPP Questions as Interactive Web-Based Practice Test or PDF Real Exam Format Detailed Explanations Instant Access Get Your Practice Test
34 comments · newest first
TE
Teri 11 months ago
No way, I thought it would output 2 3 4 5 6 7!
CA
Caprice 11 months ago
I thought it would include more numbers, weird!
CE
Celeste 11 months ago
Wait, how does it skip 2-7? Seems off.
LO
Louvenia 11 months ago
Totally agree, that's the right output!
BE
Bernardine 11 months ago
The program outputs: 0 1 8 9.
CU
Curtis 12 months ago
I’m confused about the order of elements in the output. I think it might be sorted, but I can't recall exactly how that affects the final result.
JA
Jaime 12 months ago
This reminds me of a practice question where we had to manipulate sets. I feel like the output should be the remaining elements after the erase operation.
HU
Hubert 12 months ago
I'm not entirely sure, but I remember something about lower_bound and upper_bound removing elements in a range.
BL
Blair 1 year ago
I think the set will only keep unique values, so duplicates from the vector won't affect the output.
JU
Julie 1 year ago
This is a good test of understanding set data structures and their methods. I'll make sure to carefully trace the logic to arrive at the correct answer.
EL
Elbert 1 year ago
I'm feeling pretty confident about this one. The set operations are straightforward, and I can see the final output taking shape as the code progresses.
AN
Antonio 1 year ago
Okay, I think I've got this. The key is understanding how the set is being modified by the insert and erase operations. I'll work through it systematically.
MA
Magda 1 year ago
This looks like a tricky one. I'll need to carefully step through the code and think through the set operations to figure out the output.
TE
Teresita 1 year ago
Hmm, I'm a bit confused by the set operations here. Let me re-read the question and try to visualize what's happening step-by-step.
RO
Rozella 1 year ago
I'm a bit confused by the options here. I'll need to carefully review the descriptions and think about the specific responsibilities of each listener to determine the right answer.
ZI
Zita 1 year ago
Okay, I think I've got a strategy here. I'll focus on the table aliases and join syntax options, since those seem like the most straightforward performance factors to evaluate.
MA
Martina 1 year ago
Hey, at least they're not using a linked list. That would be even more boring!
KA
Katina 1 year ago
↳ replying to Martina
User 3
JO
Jordan 1 year ago
↳ replying to Martina
User 2
MA
Mabel 1 year ago
↳ replying to Martina
User 1
JO
Joaquin 1 year ago
Wait, so this code is just a bunch of people playing with containers? I thought programming was supposed to be more exciting than that!
FA
Fabiola 1 year ago
D has got to be the right answer. The program is just playing with the vector and set, so the output should be the original integers in some order.
RO
Royal 1 year ago
Hmm, I think the answer is A. The program seems to be doing some weird set operations, but I'm not sure why the output would be 0 1 8 9.
LY
Lyndia 1 year ago
I'm pretty sure the answer is C. The set will only contain unique elements, and the erase operation will remove the range [2, 7], leaving 1, 6, 5, and 7.
JO
Johnson 1 year ago
↳ replying to Lyndia
Let's see the correct answer: B) program outputs: 2 3 4 5 6 7
TH
Theresia 1 year ago
↳ replying to Lyndia
Actually, I'm pretty sure it's B.
VI
Vince 1 year ago
↳ replying to Lyndia
No, I believe it's A.
EM
Emmett 1 year ago
↳ replying to Lyndia
I think the answer is C.
NI
Nickole 2 years ago
The correct answer is B. The program first creates a vector with the given integers, then creates a set from the vector, inserts the vector elements into the set, and finally erases the elements in the range [2, 7]. The resulting set contains the elements 2, 3, 4, 5, 6, 7, which are then printed.
NA
Naomi 1 year ago
↳ replying to Nickole
That makes sense, the set is sorted and the elements in the range [2, 7] are erased.
NA
Naomi 1 year ago
↳ replying to Nickole
B) program outputs: 2 3 4 5 6 7
HA
Haley 2 years ago
But the set will only contain unique elements, so I still think it's B.
LO
Lonny 2 years ago
I disagree, I believe the answer is C.
HA
Haley 2 years ago
I think the answer is B.
0/2000 characters

Save Cancel