Create a custom calculator program, C/C++ Programming

Assignment Help:

//Create a custom calculator program capable of reading the input stream of an expression

//and make basic computations to provide answer.

//Your program will ask the user to enter an expression in one single line

//Use an array to capture the input

//Choose how you want to word the request to the user (bound your request)

//Your calculator should be able to do the following operations individually or in combinaison:

//Multiplication

//Division

//Addition

//Substration

//maximum

//minimum

//square

//squareroot

//solve a system of equations with 2 variables (using 2 dimensional arrays) (max power is 1)

/*

Ax + By = C

Dx + Ey = F

*/

//solve a quadratic equation of the form Ax2 + Bx + C = 0

//Iplement each operation process in a separate function, and use pointers to access values used in computations

//Use the Shunting-yard_algorithm found at https://en.wikipedia.org/wiki/Shunting-yard_algorithm to obtain the

//output string that you would procees further to compute the answer

//Make use of Matrix for the last two operations and access elements using pointers

//Create your program so that the user may enter input indefinitely if needed

//Make use of the program skeleton provided below, debug and develop your code based on it.

//You can expand on it, but you must use all variables and structures defined

//At any time, ask the user he/she would like to continue

//(i.e. continue to prompt user whether to repeat exercise again)

//Print the result at each stage

//Variable declaration

const int SysEqMatrixSize = 3;

const int QuadEqArraySize = 3;

const int sizeOfInputString = 50;

const int sizeOfOutputString = 128;

//Function Declaration *********************

//Initialize the matrix provided with zeros

int myMatrixInit(int **myMatrix, int numRows, int numCols);

int processMyOutput(char *stringForProcess);

int main()

{

    int myRow;

    int myColumn;

    char myInput[sizeOfInputString];

    char myOutput[sizeOfOutputString];

    int myInputLocation;   

    int mySysOfEqu2[SysEqMatrixSize][SysEqMatrixSize];

    int QuadEqu1[QuadEqArraySize];

    int repeat = 0;

    int answer = 0;   

    //Tell the user about your program: What it does and what is expected of user   

        //Ask whether to proceed   

        //Proceed and continue processing as long as the user wants

    while(repeat == 1)

    {

        myMatrixInit(mySysOfEqu2, SysEqMatrixSize, SysEqMatrixSize);

        myMatrixInit(QuadEqu1, QuadEqArraySize, 0);

       //Collect input from user: initialize input array (load all element with \0)

       //Call input function: use scanf("%s", myInput);

       //The 's' argument type after the percent character is for string input

       //character string (not quoted); char * ; pointing to an array of characters

       //large enough for the string and a terminating '\0' that will be added

       //The name of the array is a pointer to the address of that array      

       //Check input: Design the format you want for your input and request it from user

       // if the input violates your requirements, then print error and prompt user again

       //Process execution: You must use the core code structure below

       // You may rearange it elsewhere in a function

       //***********

       //If regular expression, then do this

       //Use the Shunting-yard_algorithm found at https://en.wikipedia.org/wiki/Shunting-yard_algorithm to obtain the

       //output string that you would procees further to compute the answer

       if(shunting_yard(myInput, myOutput))

            answer = processMyOutput(myOutput);

       //Print the result at each stage

 

//Function Definitions ****************

//Passing by address

int myMatrixInit(int **myMatrix, int numRows, int numCols)

{

    //Complete with code

}

int processMyOutput(char *stringForProcess){

    //Complete with code

}

//*****************

//insert other function definition here


Related Discussions:- Create a custom calculator program

Explain the class invariant, Explain the class invariant. - It's a cond...

Explain the class invariant. - It's a condition that ensures correct working of a class and defines all the valid states for an object. - When an object is created class inv

C program to print fibonacci series upto n using recursion, C program to Pr...

C program to Print Fibonacci series upto n using recursion: int fibo(long int); void main() {                 long int a=0,n;                 printf ("how many term

Write a program to act as an electronic safe, Write a program to act as an ...

Write a program to act as an electronic safe. If the correct code has been entered the program should display "Safe Open".  If an incorrect code is input it should display "Alarm"

Bubble sort c program, Bubble sort C program: Write a program to defin...

Bubble sort C program: Write a program to define a bubble sort. void main()  {   clrscr();   int a[100],ch,n;   cout   cin>>n;   for (int i=0;i

Pebble merchant problem, There is a pebble merchant. He sells the pebbles, ...

There is a pebble merchant. He sells the pebbles, that are used for shining the floor. His main duty is to take the length of the room’s sides. But he sometimes mistakes doing that

Develop capturing printer output apps using raspberry, In POS system, cashi...

In POS system, cashier computer connect to printer using serial rs232 usb or cable. We need to capture data from that connection, and parsing the data to get total amount for every

What is an explicit constructor, A conversion constructor declared with the...

A conversion constructor declared with the explicit keyword. The compiler does not use an explicit constructor to execute an implied conversion of types. Its purpose is reserved ex

What if one can''t wrap the local in an artificial block?, What if one can'...

What if one can''t wrap the local in an artificial block?

Program of file data, Program of file data: FileData::FileData( ffblk&...

Program of file data: FileData::FileData( ffblk& blk ) :     fileName( blk.ff_name ),     fileDate( (blk.ff_fdate >> 5) & 0x000F,               blk.ff_fdate & 0x0001F

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

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!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd