Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Aim: To implement a program to handle stack overflow, underflow and odd number exception using Exception Handling.
Code:
#include
#define MAX 3
class stack
{
public:
class full;
class empty;
class oddinput;
private:
int stk[MAX];
int top;
stack()
top=-1;
}
void push(int item)
if(item%2!=0)
char o[40]="Odd Input!";
int n=item;
throw oddinput(o,n);
if(top>=MAX-1)
char o[40]="Stack Overflow!";
throw full(o,n);
stk[top]=item;
top++;
int pop()
if(top<0)
char o[40]="Stack Empty!";
int n=top;
throw empty(o,n);
int i=stk[top];
top--;
return i;
class full
char f_origin[40];
int f_val;
full(char o[40], int v)
strcpy(f_origin,o);
f_val=v;
};
class empty
char e_origin[40];
int e_val;
empty(char o[40], int v)
strcpy(e_origin,o);
e_val=v;
class oddinput
char o_origin[40];
int o_val;
oddinput(char o[40],int v)
strcpy(o_origin,o);
o_val=v;
void main()
stack s1;
int i;
try
s1.push(8);
cout<<"\nAdded 8";
s1.push(14);
cout<<"\nAdded 14";
s1.push(5);
cout<<"\nAdded 5"; //This will not print
i=s1.pop();
cout<<"\nElement popped: "<
catch(stack::oddinput oi)
cout<<"\nException: "< } catch(stack::full f) { cout<<"\nException: "< } catch(stack::empty e) { cout<<"\nException: "< } } Output: Exception: Odd Input class Added 8 Added 14 Exception: Odd Input! Input was: 5Press any key to continue Exception: Full class Added 8 Added 8 Added 8 Exception: Stack Overflow! Input was: 14Press any key to continue Exception : Empty class Added 8 Added 8 Added 14 Element popped: 14 Element popped: 8 Element popped: 8 Exception: Stack Empty! Input was: -1Press any key to continue
catch(stack::full f)
cout<<"\nException: "< } catch(stack::empty e) { cout<<"\nException: "< } } Output: Exception: Odd Input class Added 8 Added 14 Exception: Odd Input! Input was: 5Press any key to continue Exception: Full class Added 8 Added 8 Added 8 Exception: Stack Overflow! Input was: 14Press any key to continue Exception : Empty class Added 8 Added 8 Added 14 Element popped: 14 Element popped: 8 Element popped: 8 Exception: Stack Empty! Input was: -1Press any key to continue
catch(stack::empty e)
cout<<"\nException: "< } } Output: Exception: Odd Input class Added 8 Added 14 Exception: Odd Input! Input was: 5Press any key to continue Exception: Full class Added 8 Added 8 Added 8 Exception: Stack Overflow! Input was: 14Press any key to continue Exception : Empty class Added 8 Added 8 Added 14 Element popped: 14 Element popped: 8 Element popped: 8 Exception: Stack Empty! Input was: -1Press any key to continue
Output:
Exception: Odd Input class
Added 8
Added 14
Exception: Odd Input!
Input was: 5Press any key to continue
Exception: Full class
Exception: Stack Overflow!
Input was: 14Press any key to continue
Exception : Empty class
Element popped: 14
Element popped: 8
Exception: Stack Empty!
Input was: -1Press any key to continue
#questionhow can i add new customer and alot him a new unique id ..
Greatest Common Divisor (GCD) - The greatest common divisor (GCD) of two integers is the largest integer that will evenly divide both integers. The GCD algorithm involves intege
Problem: (a) Show the Java approach to event processing by explaining how event handling works in Java. Make use of a suitable example to support your answer. (b) Describe
Command-line arguments are passed into programs using the arguments of main(). Here's a quick example, for a program called by typing "progname file.txt 1 2.7": #include #incl
Question 1. Explain Briefly about class and objects. 2. Create a class string which stores a string value. Overload ++ operator which converts the characters of the string t
Explain Formatted Input Output with File Pointer? Likewise there are equivalents to the functions scanf and printf which write or read data to files. These are called fscanf a
Project Description: I want someone who can post ads for me on Craiglist . I will pay 3$ per ad i need about 30-40 ads per day . Skills required: C Programming, MySQL, Jav
Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b
c++ program about youngs doubleslit experiment
The car’s measurements are illustrated, using two arrays. Array 1 = {L, R, L, R, R, L, R, R, L, R, R, L, R, L, L, R, Z}
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd