Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

/ / Student ID: 2 0 5 3 7 0 1 6 / / TODO - Replace the number above with your actual student ID

// Student ID: 20537016
// TODO - Replace the number above with your actual student ID
//
#ifndef Stacks_h
#define Stacks_h
#include
#include
class Stack_Int {
private:
std::vector _data;
public:
// No explicit constructor or destructor
size_t size() const {
return _data.size ();
}
bool is_empty() const {
return (_data.size()==0);
}
void push(int val){
_data.push_back (val);
}
int top(bool& success) const {
if (is_empty()){
success = false;
return 0;
}
else {
success = true;
return _data.back();
}
}
bool pop(){
if (is_empty()) return false;
_data.pop_back();
return true;
}
bool pop(int& val){
if (is_empty()){
val =0;
return false;
}
val =_data.back();
_data.pop_back();
return true;
}
std::string to_string() const {
std::stringstream ss;
ss << "Stack ("<< size()<<" elements):"<< std::endl;
size_t count = std::min(size(), static_cast(10));
for (size_t i =0; i < count; ++i){
ss <<_data[size()-1- i]<< std::endl;
}
if (size()>10){
ss <<"..."<< std::endl;
} else {
ss << "Elements, if listed above, are in increasing order of age." << std::endl;
}
return ss.str();
}
// Don't remove the following line
friend class Tests;
};
class Stack_String {
private:
std::vector _data;
public:
// No explicit constructor or destructor
size_t size() const {
return _data.size ();
}
bool is_empty() const {
return (_data.size()==0);
}
void push(std::string val){
_data.push_back (val);
}
std::string top(bool& success) const {
if (is_empty()){
success = false;
return "";
}
else {
success = true;
return _data.back();
}
}
bool pop(){
if (is_empty()) return false;
_data.pop_back();
return true;
}
bool pop(std::string& val){
if (is_empty()){
val ="";
return false;
}
val =_data.back();
_data.pop_back();
return true;
}
std::string to_string() const {
std::stringstream ss;
ss << "Stack ("<< size()<<" elements):"<< std::endl;
size_t count = std::min(size(), static_cast(10));
for (size_t i =0; i < count; ++i){
ss <<_data[size()-1- i]<< std::endl;
}
if (size()>10){
ss <<"..."<< std::endl;
} else {
ss << "Elements, if listed above, are in increasing order of age." << std::endl;
}
return ss.str();
}
// Don't remove the following line
friend class Tests;
};
#endif /* Stacks_h */ i wrote this code but still get an error it produces 12 lines of ouput i dont know why this is the error Checkpoint failed. Your to_string said:
Stack (1153 elements):
939097459
...
But mine said:
Stack (1153 elements):
939097459
399880531
1884690413
613786391
1689761316
1347193144
1958521095
1128232408
795947141
1906976398
...
Elements, if listed above, are in increasing order of age.
Here is your stack:
Stack (1153 elements):
939097459
399880531
1884690413
613786391
1689761316
1347193144
1958521095
1128232408
795947141
1906976398
1987018806
962635635
...
Elements, if listed above, are in increasing order of age.
And here is mine:
Stack (1153 elements):
939097459
399880531
1884690413
613786391
1689761316
1347193144
1958521095
1128232408
795947141
1906976398
...
Elements, if listed above, are in increasing order of age.
You think that's it?

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Genomes And Databases On The Internet A Practical Guide To Functions And Applications

Authors: Paul Rangel

1st Edition

189848631X, 978-1898486312

More Books

Students also viewed these Databases questions

Question

The boss drives people; the leader coaches them.

Answered: 1 week ago

Question

Show that the reaction is second order and find the rate constant

Answered: 1 week ago