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
give a program to accept and print 2_D Array
Develop a Motion sensor in Altera control Project Description: I want a project written in c using Altera eclipse development tool, that controls a motion sensor ( SRF05 ) fr
What is meant by open addressing? Explain various collision resolution techniques with example
Question 1) What are the commonly used input/output functions in C? Question 2) What is the difference between function declaration and function definition? Write a recursive
print this pattern 1 01 101 0101
A more advanced data type is the structure; here we can define a template as a collection of different variables e.g. struct birthdate { int month; int day;
How to write C program (interest calculator) the simple interest on a loan is calculated by the formula interest=principal*rate*days/365; ?
how to use a pointer variable?
Add words in Dictionary: void Dictionary::add( Object& objectToAdd ) { if( !objectToAdd.isAssociation() ) ClassLib_error( __ENOTASSOC ); else
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
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: +1-415-670-9521
Phone: +1-415-670-9521
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd