C++ :: Write A Postfix Calculator Program Using Stack

Dec 14, 2013

i try to write a postfix calculator program using stack in C++ the in put must be the infix expression but can dont know how to write a infix expression in put.

this is my code :

#include <iostream>
#include <stdio.h>
#include <math.h>
#include <conio.h>
using namespace std;
}

[code]....

View 2 Replies


ADVERTISEMENT

C/C++ :: Postfix Calculator Using Stack With Exception Handling?

Mar 15, 2015

I'm having some significant trouble with an assignment to create a postfix calculator that simulates the dc calculator function in linux. I have attached the handout with project instructions, but my main problem at the moment lies with parsing through the string input and adding the numbers into a stack of ints.

 Project #2.pdf (47.78K)

Here's a brief summary of the methods used in the switch statement:

OPERATORS AND COMMMAND INPUTS
+ : Pops two values off the stack, adds them, and pushes the result.
- : Pops two values, subtracts the first one popped from the second one popped, and pushes the result.
* : Pops two values, multiplies them, and pushes the result.
/ : Pops two values, divides the second one popped from the first one popped, and pushes the result.
% : Pops two values, computes the remainder of the division that the / command would do, and pushes that.

Commands

p - Prints the value on the top of the stack, without altering the stack. A newline is printed after the value.

f - Prints the entire contents of the stack without altering anything. A newline is printed after each value

n - Prints the value on the top of the stack, pops it off, and does not print a newline after.

c - Clears the stack, rendering it empty.

d - Duplicates the value on the top of the stack, pushing another copy of it. Thus "4d*p" computes 4 squared and prints it.

r - Reverses the order of (swaps) the top two values on the stack.

Exception handling also needs to be added to account for division by zero and and invalid operator.

Right now my biggest problem is that I keep getting the following strange output where a 0 is automatically added to the stack when I call a function or operator. I realize this is probably because of the lines I have placed outside of the for loop that read

//END FOR LOOP
int num = atoi(operands.c_str());
myStack.push(num);
operands = "";
cout << num << " added." << endl;

But when I tried putting these statements INSIDE the for loop, I just get more errors. I've been working on this for a number of hours but I can't figure out my issue. I've also attached an image of my current output.

#include <iostream>
#include <cctype>
#include <string>
#include <cstdlib>
using namespace std;
#include "stack.h"
bool isOperator(const char& input );

[code]....

View 6 Replies View Related

C++ :: Calculator Using Stack - How To Convert Operation From Infix To Postfix

Sep 25, 2013

I trying to write a code for a calculator using stack is how to convert an operation from infix to postfix . Here is my attempt I created a header file.

#ifndef STACK_H
#define STACK_H
#include <iostream>
using namespace std;
template<class T>
struct node {
T item;

[Code] .....

View 1 Replies View Related

C++ :: Running Infix To Postfix Stack Conversion Program

Mar 27, 2014

I keep getting the same error messages every time on Visual Studio. I don't know where the error is originating. Basically I'm trying to convert an infix expression (A+B-C) to a postfix expression (AB+C-) using stacks.

#include <iostream>
#include <fstream>
#include <string>
#include <stack>
#include "Expression.h"
#include "stackType.h"
using namespace std;
int main() {
string fileName;
string infixExpression, postfixExpression;

[Code] .....

View 2 Replies View Related

C :: Program To Evaluate Postfix Expression Using Array Implementation Of Stack

Apr 26, 2014

Write a program that evaluates postfix expression using array implementation of stack.

The expression [the input] is evaluated from left to right using a stack. When the element read from the expression is an operand, push it into the stack.When the element read from the expression is an operator: Pop two operands from the stack.Evaluate the two operandsPush the result of the evaluation into the stack.

The final result lies on the top of the stack at the end of the calculation. Make sure to display the result before terminating the program.Write a program that evaluates postfix expression using array implementation of stack.

Code:
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#define M 20

typedef struct{

[Code] ....

View 1 Replies View Related

C++ :: Infix To Postfix Using Stack Conversion

Mar 8, 2013

I am Getting following errors I don't know why.I have mentioned the lines (in comments) where these errors are occurring.
__________________________________________________
warning C4018: '<' : signed/unsigned mismatch
error C2064: term does not evaluate to a function taking 0 arguments
error C2064: term does not evaluate to a function taking 0 arguments
__________________________________________________ _

Code:
/////////////////////////////////////////////////
//libraries
/////////////////////////////////////////////////
#include <iostream>
#include <string>
using namespace std;

[Code] .....

View 1 Replies View Related

C++ :: Array Base Stack Class - Infix To Postfix Conversion

Feb 4, 2014

Array based stack class. So i am having a problem, i do not understand how to convert an infix notation into a postfix notation from a txt file. The infix expressions are stored in a text file. for example inside the text file is

6+9
2+7*8
(1+5)*3
5+(6-2)*((2-8)

at the moment my header file is

#ifndef STACKS_H
#define STACKS_H
#include <iostream>
using namespace std;
const int STACKS_CAPACITY = 128;
typedef int StacksElement;

[Code] ....

but how to make it convert the into postfix...

View 3 Replies View Related

C++ :: Write A Calculator Using Two Stacks

Apr 13, 2014

I just started by defining a stack class (stackDouble). I need to write a program that accepts an infix calculator expression, with the following operators (**, exponentiation, /, division, and, -, subtraction. The operator precedence is exponent, division, and subtraction.I need to use a stack of doubles and a stack of strings, of which I can write two classes, or write a single stack template. The user will input the expression just via cin, and there will be a # before every number, a ! before each operator, and a . at the end of the expression. '#', '!', or '.' can be input into a char variable, numbers into a double variable and operators into a string variable.

For example, the following would output 6:

# 3 ! / # 2 ! / # .5 ! ** # 2 .

As stated above, I already made up a stackDouble class. What would I need to do to create the other class (I don't think I want to do it with a template)?

Code:
#include <iostream>
#include <string>
using namespace std;
class stackDouble{

[code]....

View 2 Replies View Related

C :: Write Algorithm Using Stack

Jul 22, 2014

write an algorithm using stack to determine if an input of string is in the form xCy where y is the reverse of x.x and y are strings of A and B. eg : AABACABAA

View 8 Replies View Related

C++ :: Write A Calculator - User Will Enter Terms And They Will Be Stored In Arrays

Jun 14, 2013

i'm trying to write a calculator. the user will enter the terms and they will be stored in arrays. i will be storing those terms in string arrays and then later turn them to double to work with them. but the user should be able to enter terms like sin(252) and the program should be able to recognize it and calculate it.

View 4 Replies View Related

C++ :: Creating Infix To Postfix Program Through Inherited Class

Apr 25, 2014

I have the following problem on my C++ Program and I am not sure why it is not working. I am creating a infix to postfix program through an inherited class which I am not sure it is working.

#include <iostream>
#include <stack>
using namespace std;

int in_stack_Priority(char a){
if(a == '*' || a == '/')
return 2;

[Code] .....

View 3 Replies View Related

C/C++ :: Convert Infix To Postfix Using Linked Lists And Stacks - Program Stop Working After 1st Call

Sep 28, 2014

I was given a task to convert infix to post fix using both linked lists and stacks in the code so this is what i have written but the problem is it is giving me same error at three different places "missing function header(old style format?)

#include <iostream>
#include <string>
using namespace std;
const int size = 100;
class stack{
private: // Declare a structure for the list

[Code] ....

View 12 Replies View Related

C/C++ :: Error When Trying To Program BMI Calculator

Aug 26, 2014

'm trying to program a BMI calculator in C for my assignment where the weight must be in KG and an int , and the height must be in m and a double value. The program should allow the user to input his weight(kg) and height(m) separated by a space and be able to calculate and display the BMI. My code is shown below :

#include<stdio.h>
int
main(void) {
int weight;
double height,bmi;
bmi = weight / ( height * height ) ;
scanf("%d%lf" , &weight , &height );
printf("BMI = %f", bmi);
return 0;
}

However , after running the program , I constantly get a 1.#INF00 value for my result.The compiler did not show any errors so why I'm getting this value.I input my weight and height in this format "45 1.65" 45 being the weight and 1.65 being the height.

View 3 Replies View Related

C++ ::  Calculator Program - Function Does Not Take 0 Arguments

Jan 29, 2014

I am supposed to get 2 numbers then have the person choose what they want to do to the numbers. Here is the code:

//Mike Karbowiak
//12/24/13
//Mathematics
#include <iostream>
#include <iomanip>
#include <string>
#include <vector>
#include <algorithm>

[Code] ....

The errors I am getting so far are:

error C2660: 'Add' : function does not take 0 arguments
error C2660: 'Subtract' : function does not take 0 arguments
error C2660: 'Multiply' : function does not take 0 arguments
error C2660: 'Divide' : function does not take 0 arguments

View 3 Replies View Related

C++ :: Cone Volume Calculator Program

Nov 6, 2014

I'm working on below program and I want the program to do the same thing, but with not one main() function, but instead one main() function PLUS one user defined function called computeConeVolume that contains the calculation. In other words I want to remove the one line calculation and replace it with a function call, then write and add the function below main with the calculation, surrounded any other syntax that I need to complete it.

The function should contain local variables and a constant declared and must have the calculation, it may not do anything else such as input or output. Should be able to declare "global" variables anywhere but no variables above or outside of main() and the function are allowed. A value-returning function should be used because it's a little simpler to understand, but you can employ a void function. Need to have a function prototype at the top of the code, then main, then your function.

//Cone Volume Calculator Program
#include <iostream>
using namespace std;
int main( ) {
//Declare variables and constants
double coneRadius = 0.0;
double coneHeight = 0.0;

[Code] ....

View 6 Replies View Related

C++ :: Calculator Program - How To Do Sine Calculation

Apr 26, 2013

I am basically trying to make a program for a calculator. I am struggling with how to do the sine calculation. this calculation will take place at line 158.

#include <iostream>
#include <cmath>
using namespace std;
int main() {

double firstNumber = 0.0;
double secondNumber = 0.0;
char operation =' ';

[Code] ....

View 1 Replies View Related

C :: Program That Have Starting Menu For A Calculator Using If / Else Statement

Sep 21, 2014

I just started learning C and trying to create a program in C that will have a starting menu for a calculator. The problem is that I could do that with a switch/case but the assignment requires me to use if/else.

Here's what I have so far:

Code:

#include <stdio.h>
int calc();
int menu();
int main() {
printf("Hello. Welcome to the program.
");
printf("Press RETURN key to continue...

[Code]...

How should I go from now using if/else to have those 4 choices?

View 5 Replies View Related

C :: Making Calculator Program Using Only Getchar And Putchar

Mar 21, 2014

I have to make a calculator program that has 5 different functions (this is obviously the easy part, once all the input is assigned to their respective variables), which are addition, subtraction, mod, multiplication and division (negatives are not allowed, and must be error-checked; spaces must be ignored). I need to take the equation from the user, echo it back and then solve the problem.

Code:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <math.h>

[Code].....

View 4 Replies View Related

C/C++ :: Using Pointers In Stack Program

Sep 7, 2014

I am trying to use pointers in a stack program. But i am failing. my push function takes in the array,item im pushing, the reference to the top, and the size of the array.

void push(char stack[], char item, int *top, int max_size) {
if(&top==(max_size-1)) {
printf("Stack is Full");
return;
} else {
*top=+1;
stack[*top]=item;
} return;
}

And in the main function i pass a randomly pick char value, print it first , and pass it to the array using the push function

#define STACK_SIZE 10
#define STACK_EMPTY -1
int main(){
char s[STACK_SIZE];
int s_top = STACK_EMPTY; // The index of the top of the stack
int *top= s_top;
int max_size=STACK_SIZE;

[Code] .....

I know I am not referencing and dereferencing correctly and probably other stuff also. but i get these 2 errors:

stack.c: In function "push":
stack.c:23:9: warning: comparison between pointer and integer [enabled by default]
if(&top==(max_size-1))

[Code] ....

View 3 Replies View Related

C :: Creating Simple Calculator By Splitting The Program In 3 Files

Feb 21, 2014

I am new to C programming, I have been given an assignment to create a simple calculator by splitting the program in 3 files. It should have 2 .c files and 1 .h... I went through the internet extensively and could only come up with this.

main.c:

Code:

//Calculator main.c
#include <stdio.h>
#include <conio.h>
#include "Functions.h"
int main() {
float x = 0, y = 0;
int operation;

[Code]...

Functions.c

Code:

#include "Functions.h"
extern float x, y;
float addition (float a, float b) {
return a + b;

[Code]...

Functions.h

Code:

#ifndef FUNCTIONS_H_INCLUDED
#define FUNCTIONS_H_INCLUDED
float Sum(float a, float b);
float difference (float a, float b);
float remainder (float a, float b);
float product (float a, float b);
#endif

When I do a 'cl main.c' on the Developer Command window for VS2013, i get an error that reads :

main.obj
main.obj : error LNK2019: unresolved external symbol _difference referenced in function _main
main.obj : error LNK2019: unresolved external symbol _product referenced in function _main
main.obj : error LNK2019: unresolved external symbol _addition referenced in function _main
main.exe : fatal error LNK1120: 3 unresolved externals

View 5 Replies View Related

C++ :: Incorporate Button Into Current Program That Opens Up Calculator?

Nov 10, 2013

I want to incorporate a button into my current program that opens up a calculator in a different window. I have the code for the calculator and the program. I have never worked with buttons or windows.

View 4 Replies View Related

C/C++ :: Using Pointer Of Pointers In A Stack Program

Sep 14, 2014

i wrote a program using pointers in a basic stack program below is the pop and push functions and their calls in main. basically getting random numbers and converting to char characters and inserting them into an int array.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

[Code]....

View 9 Replies View Related

C++ :: Reverse Polish Calculator - How To Make Program Exit If User Enters Only 0

Oct 11, 2013

I have my Reverse Polish calculator compiling and everything but for the assignment I need to handle a few exceptions that I can't seem to get. First off I'm trying to make the program exit if the user enters only "0" but since the input i'm using is string, I cant figure out how to code

"If the first node is 0 and the next node = NULL, return true"

Here is my code:
#include<iomanip>
#include<iostream>
#include<stdlib.h>
#include<stdio.h>
#include<string>
#include<sstream>
using namespace std;

class Stack {

[Code] .....

View 1 Replies View Related

C++ :: Stack Function Is Supposed To Represent Scope Of Program

Dec 5, 2014

I am trying to make an interpreter. This stack function is supposed to represent the scope of the program, meaning scope of the variables. The START represents a new scope, and FINISH represents the current scope closing. I am trying to do a recursive function in which the stack is updated with each recursive call, which represent a new scope for each call.After i enter a new scope and the scope ends, my program prematurely terminates.

void stack(ifstream& file,Hash& Table) {
string line;
getline(file,line);
int i=0;

[code].....

View 2 Replies View Related

Visual C++ :: Program That Take Strings From File And Push It Into Stack

Sep 29, 2013

How to write a programme that take strings from file and push it into the stack with number of each sting string before it and later clean the stack?

View 6 Replies View Related

Visual C++ :: What Is The Usual Maximum Size Of Stack Of A Win32 Program

Sep 24, 2014

I know that if the structure doesn't fit into the stack, it needs to be put onto the heap. But what is maximum size of a win32 stack in usual case?

View 4 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved